Symfony et API automatique …

Salut à tous,

Encore un article sur symfony :). Cette fois ci nous allons parler du bundle api-platform. L’idée de ce bundle est tout simplement de ne plus avoir besoin de programmer son API rest !!

L’interêt de ce bundle réside en la possibilité de ne plus avoir à gérer les controlleurs propre aux CRUD de vos entités (les get, post, put et delete sont gérés de base).

Concrètement, une fois votre classe mappée créée (@ORM\Entity), il suffit de mettre le commentaire :

@ApiResource

Et votre entité sera directement disponible sur votre API !!

Seul bémol, les relations ne sont pas géré au niveau REST (pas de /api/classeparente/1/classeenfant/2, le patch est en attente de review dans la master).

Il est possible d’utiliser le format de son choix JSON (Raw), Hydra, …

Le bundle utilise NelmioAPIDoc ou Swagger pour fournir directement une documentation assez complète de votre api et la pagination/filtre est disponible de base :).

Si vous cherchez à fournir une API REST CRUD, vous n’aurez même plus besoin de programmer !!! Qui plus est, le projet semble plutôt solide et une petite communauté à l’air de bien soutenir le projet avec plusieurs dizaine de commit par semaine depuis plusieurs années.