Tout ce que fait APIEUVRE.

Du premier modèle à la requête qui part de ton app : ce qui est généré, comment c'est protégé, ce que tu peux appeler.

Modèles typés

Un modèle, c'est une table : Produit, Commande, Adhérent. Tu lui donnes des champs typés : texte, entier, décimal, booléen, date, date-heure, e-mail ou JSON.

Chaque champ peut être obligatoire, unique, filtrable, avoir une valeur par défaut ou une longueur maximale. La validation des requêtes en découle, et chaque erreur dit quel champ corriger.

Product
  title     texte     obligatoire
  price     décimal   défaut 0
  stock     entier
  contact   e-mail    unique

POST /api/products → 422
« Le champ price doit être un nombre. »

Relations

belongsTo, hasMany, hasOne et belongsToMany. La clé étrangère est créée et vérifiée à chaque écriture ; les tables pivot sont gérées pour toi.

Pour associer plusieurs enregistrements, envoie une liste d'identifiants dans le champ *_ids.

POST /api/products
{ "title": "Monoï", "category_id": 3, "tag_ids": [1, 4] }

Cinq routes par modèle

Lister (paginé), lire, créer, modifier, supprimer. La liste accepte la recherche plein texte, les filtres (égal, différent, plus grand, plus petit, contient, entre, parmi) et le tri sur n'importe quel champ.

GET    /api/products?search=vanille&filter[price_gte]=5&sort=-price
GET    /api/products/12
POST   /api/products
PATCH  /api/products/12
DELETE /api/products/12

Déploiement sûr

Déployer applique ton schéma à la base du projet en une seule transaction. Si une étape échoue, rien n'est appliqué et le message dit pourquoi.

Renommer un champ conserve ses données, changer son type convertit l'existant, le rendre obligatoire ou unique vérifie d'abord les valeurs en place.

Clés API

Chaque projet a ses clés : lecture seule ou lecture + écriture. La clé est affichée une seule fois à sa création et se révoque en un clic.

Tu peux aussi ouvrir la lecture publique : les GET répondent sans clé, l'écriture reste protégée.

curl https://api.apieuvre.com/p/boutique/api/products \
  -H "X-Api-Key: apv_…"

Données en ligne

Un écran par modèle pour consulter, chercher, ajouter, corriger et supprimer, avec des formulaires adaptés à chaque type et des listes déroulantes pour les relations.

Les données d'exemple s'insèrent en un clic, en vidant la table avant si tu veux.

Documentation OpenAPI

Une spécification OpenAPI 3 est générée à partir de ton schéma et régénérée à chaque déploiement. Consulte-la dans le tableau de bord ou importe le JSON dans ton outil.

Diagramme et testeur

Le diagramme entité-relation montre tes modèles et leurs liens ; déplace les entités, les positions sont gardées.

Le testeur envoie de vraies requêtes à ton API (méthode, en-têtes, corps JSON) et affiche le statut, la durée et la réponse.