dunglas/api-bundle
API Platform Core is a powerful Symfony bundle for building hypermedia-driven REST and GraphQL APIs. It supports JSON-LD, Hydra, OpenAPI, JSON:API, HAL and Problem Details, letting you create fully featured, high-performance API-first projects in minutes.
Full Changelog: https://github.com/api-platform/core/compare/v5.0.3...v5.0.4
Full Changelog: https://github.com/api-platform/core/compare/v5.0.1...v5.0.2
symfony/* ^7.4 || ^8.0 across all components; drop support for Symfony 6.4 and 7.0–7.3 (#8397)[@experimental](https://github.com/experimental) APIs (Elasticsearch, State parameter providers, PropertyAwareFilterInterface, Laravel); [@experimental](https://github.com/experimental) kept only on MCP (#8365)symfony/* ^7.4 || ^8.0 across all components; drop support for Symfony 6.4 and 7.0–7.3 (#8397)[@experimental](https://github.com/experimental) APIs (Elasticsearch, State parameter providers, PropertyAwareFilterInterface, Laravel ParameterValidatorProvider); [@experimental](https://github.com/experimental) now kept only on MCP (#8398)Full Changelog: https://github.com/api-platform/core/compare/v4.3.16...v4.3.17
Full Changelog: https://github.com/api-platform/core/compare/v4.3.15...v4.3.16
Full Changelog: https://github.com/api-platform/core/compare/v4.3.14...v4.3.15
Full Changelog: https://github.com/api-platform/core/compare/v4.4.0-alpha.1...v4.4.0-alpha.2
withCredentials option to Swagger UI by @cay89 in https://github.com/api-platform/core/pull/8197Full Changelog: https://github.com/api-platform/core/compare/v4.3.14...v4.4.0-alpha.1
Full Changelog: https://github.com/api-platform/core/compare/v4.3.13...v4.3.14
Full Changelog: https://github.com/api-platform/core/compare/v4.3.12...v4.3.13
Fixes CVE-2026-54164 (GHSA-9rjg-x2p2-h68h) — type confusion: relation IRIs were not type-checked, so a writable relation could be assigned a resource of the wrong type.
Full Changelog: https://github.com/api-platform/core/compare/v4.3.11...v4.3.12
Fixes CVE-2026-54164 (GHSA-9rjg-x2p2-h68h) — type confusion: relation IRIs were not type-checked, so a writable relation could be assigned a resource of the wrong type.
Full Changelog: https://github.com/api-platform/core/compare/v4.2.25...v4.2.26
Fixes CVE-2026-54164 (GHSA-9rjg-x2p2-h68h) — type confusion: relation IRIs were not type-checked, so a writable relation could be assigned a resource of the wrong type.
Full Changelog: https://github.com/api-platform/core/compare/v4.1.29...v4.1.30
Full Changelog: https://github.com/api-platform/core/compare/v4.3.10...v4.3.11
Full Changelog: https://github.com/api-platform/core/compare/v4.3.9...v4.3.10
Full Changelog: https://github.com/api-platform/core/compare/v4.3.8...v4.3.9
Full Changelog: https://github.com/api-platform/core/compare/v4.3.7...v4.3.8
Full Changelog: https://github.com/api-platform/core/compare/v4.2.24...v4.2.25
Full Changelog: https://github.com/api-platform/core/compare/v4.1.28...v4.1.29
Full Changelog: https://github.com/api-platform/core/compare/v4.3.6...v4.3.7
Full Changelog: https://github.com/api-platform/core/compare/v4.3.5...v4.3.6
Full Changelog: https://github.com/api-platform/core/compare/v4.3.4...v4.3.5
ResourceClassInfoTrait::isResourceClass() is always true by @Maxcastel in https://github.com/api-platform/core/pull/7924Full Changelog: https://github.com/api-platform/core/compare/v4.3.3...v4.3.4
Full Changelog: https://github.com/api-platform/core/compare/v4.3.2...v4.3.3
Full Changelog: https://github.com/api-platform/core/compare/v4.2.23...v4.2.24
Full Changelog: https://github.com/api-platform/core/compare/v4.3.1...v4.3.2
Full Changelog: https://github.com/api-platform/core/compare/v4.2.22...v4.2.23
Full Changelog: https://github.com/api-platform/core/compare/v4.3.0...v4.3.1
Full Changelog: https://github.com/api-platform/core/compare/v4.2.21...v4.2.22
api-platform/mcp component (#7703)isGranted is now evaluated before the provider, preventing unnecessary database queries on unauthorized requests (#7500)ne (not equal) operator (#7814)caseSensitive option for PartialSearchFilter (#7675)SkipAutoconfigure attribute for Laravel (#7467)Allow and Accept-Post response headers (#6917)gen_id global configuration option (#7775)[@type](https://github.com/type) with output and itemUriTemplate: uses the resource class name instead of the output DTO class nameproperty (#7681): throws InvalidArgumentException if missing (unless you use a :property placeholder)[@id](https://github.com/id) uses #ShortName (#7771): replaces schema.org type URIs — clients should expect class [@id](https://github.com/id) and property range changesenable_scalar: false if unwantedSee the full changelog with all bug fixes and detailed upgrade notes on the 4.3 branch CHANGELOG.md.
Full Changelog: https://github.com/api-platform/core/compare/v4.2.21...v4.3.0
Full Changelog: https://github.com/api-platform/core/compare/v4.3.0-beta.1...v4.3.0-beta.2
Full Changelog: https://github.com/api-platform/core/compare/v4.2.19...v4.2.20
Full Changelog: https://github.com/api-platform/core/compare/v4.3.0-alpha.2...v4.3.0-beta.1
Full Changelog: https://github.com/api-platform/core/compare/v4.2.17...v4.2.18
Hydra class [@id](https://github.com/id) now always uses #ShortName (#7771): Hydra documentation classes now consistently use #ShortName as their [@id](https://github.com/id) instead of schema.org type URIs (e.g. schema:Product). This properly resolves class identifier collisions when multiple resources shared the same semantic type, which previously caused api-doc-parser conflation. Semantic types configured via types are now exposed through rdfs:subClassOf. Clients should expect class [@id](https://github.com/id) and property range changes in the Hydra documentation if resources had custom types configured.
Full Changelog: https://github.com/api-platform/core/compare/v4.3.0-alpha.1...v4.3.0-alpha.2
Full Changelog: https://github.com/api-platform/core/compare/v4.2.16...v4.2.17
SkipAutoconfigure attribute (#7467)output with itemUriTemplate on a collection operation, the JSON-LD [@type](https://github.com/type) will now use the resource class name instead of the output DTO class name for semantic consistency with itemUriTemplate behavior.Full Changelog: https://github.com/api-platform/core/compare/v4.2.16...v4.3.0-alpha.1
Full Changelog: https://github.com/api-platform/core/compare/v4.2.15...v4.2.16
phpunit.baseline.xml to .gitattributes by @gharlan in https://github.com/api-platform/core/pull/7692Full Changelog: https://github.com/api-platform/core/compare/v4.2.14...v4.2.15
ConcernsResourceMetadataCollectionFactory by @ttskch in https://github.com/api-platform/core/pull/7676Full Changelog: https://github.com/api-platform/core/compare/v4.2.12...v4.2.13
Symfony\Component\TypeInfo\Type::getClassName() by @Maxcastel in https://github.com/api-platform/core/pull/7685Full Changelog: https://github.com/api-platform/core/compare/v4.2.13...v4.2.14
Happy new year 2026 :fireworks:!
% or _ in search filter by @VincentLanglet in https://github.com/api-platform/core/pull/7653pagination_maximum_items_per_page defaults correctly when config defaults key is absent by @Maxcastel in https://github.com/api-platform/core/pull/7609Full Changelog: https://github.com/api-platform/core/compare/v4.2.11...v4.2.12
Full Changelog: https://github.com/api-platform/core/compare/v4.2.10...v4.2.11
Full Changelog: https://github.com/api-platform/core/compare/v4.2.9...v4.2.10
[!WARNING] Inside a filter you may receive a scalar value where you expected an array especially when using a custom filter extending the AbstractFilter, with a :property placeholder. Read more at https://github.com/api-platform/core/pull/7547
Full Changelog: https://github.com/api-platform/core/compare/v4.2.7...v4.2.9
Full Changelog: https://github.com/api-platform/core/compare/v4.1.27...v4.1.28
Full Changelog: https://github.com/api-platform/core/compare/v4.2.6...v4.2.7
Full Changelog: https://github.com/api-platform/core/compare/v4.2.4...v4.2.5
[@id](https://github.com/id) and [@type](https://github.com/type) properties required only in the JSON-LD schema for output by @ttskch in https://github.com/api-platform/core/pull/7397KernelBrowser::loginUser() by @ttskch in https://github.com/api-platform/core/pull/7446Full Changelog: https://github.com/api-platform/core/compare/v4.2.1...v4.2.2
pagination_maximum_items_per_page same as Laravel version by @ttskch in https://github.com/api-platform/core/pull/7396Full Changelog: https://github.com/api-platform/core/compare/v4.2.0...v4.2.1
How can I help you explore Laravel packages today?