For an overview of the main new features of this version, read the release announcement.
- Add GraphQL support (including mutations, pagination, filters, access control rules and automatic SQL joins)
- Fully implement the GraphQL Relay Server specification
- Add JSONAPI support
- Add a new
@ApiFilter
annotation to directly configure filters from resource classes - Add a partial paginator that prevents
COUNT()
SQL queries - Add a new simplified way to configure operations
- Add an option to serialize Validator's payloads (e.g. error levels)
- Add support for generators in data providers
- Add a new
allow_plain_identifiers
option to allow using plain IDs as identifier instead of IRIs - Add support for resource names without namespace
- Automatically enable FOSUser support if the bundle is installed
- Add an
AbstractCollectionNormalizer
to help supporting custom formats - Deprecate NelmioApiDocBundle 2 support (upgrade to v3, it has native API Platform support)
- Deprecate the
ApiPlatform\Core\Bridge\Doctrine\EventListener\WriteListener
class in favor of the newApiPlatform\Core\EventListener\WriteListener
class. - Remove the
api_platform.doctrine.listener.view.write
event listener service. - Add a data persistence layer with a new
ApiPlatform\Core\DataPersister\DataPersisterInterface
interface. - Add the a new configuration to disable the API entrypoint and the documentation
- Allow to set maximum items per page at operation/resource level
- Add the ability to customize the message when configuring an access control rule trough the
access_control_message
attribute - Allow empty operations in XML configs