packagist api-platform/core v4.3.0

4 hours ago

Highlights

MCP (Model Context Protocol) Support

  • Introduce api-platform/mcp component (#7703)
  • MCP bundle tool integration (#7595)
  • Collection support for MCP (#7724)
  • Laravel MCP support (#7709)

Scalar API Reference Documentation

  • Scalar is now available as an alternative documentation UI alongside Swagger UI (#7817)

Security

  • isGranted is now evaluated before the provider, preventing unnecessary database queries on unauthorized requests (#7500)

Doctrine Filters

  • UUID filter (#7628) with nested relation support (#7759)
  • ComparisonFilter decorator for range filtering (#7760) with ne (not equal) operator (#7814)
  • caseSensitive option for PartialSearchFilter (#7675)
  • ODM SortFilter and nested property support (#7780)
  • Support relations on filters (#7711)
  • Readonly entities automatically lose PUT & PATCH operations (#7453)

Elasticsearch

  • OpenSearch support (#7811)
  • SSL configuration options (#4059)

Other Notable Features

  • Defaults parameters (#7758)
  • Laravel object mapper (#7704)
  • JSON Schema normalization/denormalization with attributes (#7629)
  • JSON:API entity identifiers instead of IRIs as resource id (#7702)
  • SkipAutoconfigure attribute for Laravel (#7467)
  • LDP-compliant Allow and Accept-Post response headers (#6917)
  • Cache operation metadata factory (#7516)
  • gen_id global configuration option (#7775)
  • Preserve key option in CollectionNormalizer (#7721)
  • UUID/ULID parameter validation (#7649)

Breaking Changes

  • JSON-LD @type with output and itemUriTemplate: uses the resource class name instead of the output DTO class name
  • Doctrine filters require explicit property (#7681): throws InvalidArgumentException if missing (unless you use a :property placeholder)
  • Readonly entities lose PUT & PATCH (#7453): clients will receive 404 instead of processing the request

Behavioral Changes

  • Hydra class @id uses #ShortName (#7771): replaces schema.org type URIs — clients should expect class @id and property range changes
  • Scalar UI enabled by default (#7817): disable with enable_scalar: false if unwanted

See the full changelog with all bug fixes and detailed upgrade notes on the 4.3 branch CHANGELOG.md.

New Contributors

Full Changelog: v4.2.21...v4.3.0

Don't miss a new core release

NewReleases is sending notifications on new releases.