The API Platform Core Library

API Platform Core is an easy-to-use and powerful library to create hypermedia-driven REST APIs. It is a component of the API Platform framework. It can be used as a standalone or with the Symfony framework (recommended).

It embraces JSON for Linked Data (JSON-LD) and Hydra Core Vocabulary web standards but also supports HAL, Swagger/Open API, XML, JSON, CSV and YAML.

Build a working and fully featured CRUD API in minutes. Leverage the awesome features of the tool to develop complex and high-performance API-first projects.

If you are starting a new project, the easiest way to get API Platform up is to install the API Platform Distribution.

Screenshot

Features

Here is the fully featured REST API you'll get in minutes:

  • Automatic CRUD
  • Hypermedia (JSON-LD and HAL)
  • Machine-readable documentation of the API in the Hydra and Swagger/Open API formats, guessed from PHPDoc, Serializer, Validator and Doctrine ORM / MongoDB ODM metadata
  • Nice human-readable documentation built with Swagger UI (including a sandbox) and/or ReDoc
  • Pagination
  • A bunch of filters
  • Ordering
  • Validation using the Symfony Validator Component (with groups support)
  • Advanced authentication and authorization rules
  • Errors serialization (Hydra and the RFC 7807 are supported)
  • Advanced serialization thanks to the Symfony Serializer Component (groups support, relation embedding, max depth...)
  • Automatic routes registration
  • Automatic entrypoint generation giving access to all resources
  • JWT and OAuth support
  • Files and \DateTime and serialization and deserialization
  • FOSUserBundle integration (user management)

Everything is fully customizable through a powerful event system and strong OOP.

This bundle is extensively tested (unit and functional). The Fixtures/ directory contains a working app covering all features of the library.

Other resources