Aller au contenu principal

Créer une API REST complète avec API Platform 3

Corentin Boutillier
1 min de lecture
3 vues

API Platform 3 : Le guide complet

API Platform est la solution de référence pour créer des APIs REST et GraphQL avec Symfony. Version 3 apporte de nombreuses améliorations.

Installation et configuration


composer require api

Créer votre première ressource


#[ApiResource(
    operations: [
        new Get(),
        new GetCollection(),
        new Post(),
        new Put(),
        new Delete(),
    ],
    paginationItemsPerPage: 20,
    security: "is_granted('ROLE_USER')"
)]
#[ORM\Entity]
class Product
{
    #[ORM\Id]
    #[ORM\GeneratedValue]
    #[ORM\Column]
    private ?int $id = null;
    
    #[ORM\Column(length: 255)]
    #[Assert\NotBlank]
    #[Assert\Length(min: 3, max: 255)]
    private ?string $name = null;
    
    #[ORM\Column(type: Types::DECIMAL, precision: 10, scale: 2)]
    #[Assert\Positive]
    private ?string $price = null;
}

Filtres et recherche

API Platform offre des filtres puissants pour vos collections :


#[ApiFilter(SearchFilter::class, properties: ['name' => 'partial'])]
#[ApiFilter(RangeFilter::class, properties: ['price'])]
#[ApiFilter(OrderFilter::class, properties: ['name', 'price'])]
class Product
{
    // ...
}

Documentation automatique

API Platform génère automatiquement une documentation OpenAPI (Swagger) accessible à /api/docs.

Validation

La validation est gérée automatiquement via les contraintes Symfony Validator.

Partager cet article

Logo Vulcain Développement - Développeur Symfony expert vulcain.agency

Développeur Full-Stack freelance expert
Créateur d'applications web sur mesure

📧 vulcain.developpement@gmail.com
📍 Saint-Lô, France

🏗️ Développement Symfony

🔗 API Platform

🏢 Solutions Métier

Liens Rapides