PackageTrack
Sign in Get early access

guzzlehttp/guzzle-services

Provides an implementation of the Guzzle Command library that uses Guzzle service descriptions to describe web services, serialize requests, and parse responses into easy to use model structures.

2.0.0 11M downloads/mo #1871 most downloaded on Packagist guzzle/guzzle-services

What this package is like to depend on

Last release 1 months ago

20 Jul 2026

Release timing varies

gaps range from 8 days to 1.3 years

Most releases are documented

notes for 27 of 33 stable releases

Nothing withdrawn

no release was ever pulled

12 years old

33 releases · first in 2014

14 releases in the last 12 months

see the full history below

Release timeline

33 releases · Mar 2014 to Jul 2026
2015 2017 2019 2021 2023 2025
Release Pre-release

Releases

latest 33
  1. 2.0.0 20 Jul 2026
    Release notes
    • Drop support for PHP 7.2 and 7.3
    • Require guzzlehttp/guzzle ^8.0, guzzlehttp/promises ^3.0, and guzzlehttp/psr7 ^3.0
    • Require guzzlehttp/command ^2.0 and guzzlehttp/uri-template ^2.0
    • Remove the legacy baseUrl service description option; use baseUri instead
    • Reject non-string and non-stringable baseUri service-description values before URI construction
    • Remove the legacy responseClass operation option; use responseModel instead
    • Reject native PHP serialization of runtime client pipeline objects
    • Redact API-key-bearing command and HTTP arguments from PHP 8.2+ backtraces
    • Default operations without an httpMethod to GET, preserve explicit httpMethod casing, and reject invalid httpMethod values
    • Require header location values to be strings or non-empty arrays of strings
    • Reject non-finite float command values in request locations
    • Return body response location values as strings instead of PSR-7 streams
    • Return raw PSR-7 responses in the response result key when the process client option is false
    • Allow operations to override response processing with the process operation option
    • Support JSON response fields with multiple allowed type values
    • Reject scalar top-level JSON response bodies
    • Let native JsonException report JSON location encoding and decoding failures
    • Escape unsafe service metadata and response values in generated exceptions
    • Require custom implementations and subclasses of public service APIs to match native method signatures
    • Require custom parameter filters and extension points to accept exact value types instead of relying on scalar coercion
    • Validate cast integer values against string enum, pattern, and length constraints
    • Match string enum values strictly by type and value
    • Normalize stringable command values for string parameters during validation
    • Treat explicit false values as present in Parameter::has() while omitted required and static flags remain absent
    • Limit XML response traversal and additional-property conversion to 512 nested elements by default
    • Serialize XML request scalar element text with XMLWriter text escaping instead of CDATA sections
    • Honor the documented GuzzleClient response_locations option when building the default deserializer
    • Reject invalid GuzzleClient configuration option values
    • Reject loose parameter schema values instead of normalizing them
    • Require null schema types to match only null values
    • Improve PHPDoc for service client transformers, command handler stacks, and service description, operation, and parameter schema arrays
    • Mark Operation, ValidatedDescriptionHandler, and Rfc3986Serializer as soft-final with @final annotations
    • Trim XML response text nodes with XML whitespace characters only
    Open source →
    Release notes
    • Drop support for PHP 7.2 and 7.3
    • Require guzzlehttp/guzzle ^8.0, guzzlehttp/promises ^3.0, and guzzlehttp/psr7 ^3.0
    • Require guzzlehttp/command ^2.0 and guzzlehttp/uri-template ^2.0
    • Remove the legacy baseUrl service description option; use baseUri instead
    • Reject non-string and non-stringable baseUri service-description values before URI construction
    • Remove the legacy responseClass operation option; use responseModel instead
    • Reject native PHP serialization of runtime client pipeline objects
    • Redact API-key-bearing command and HTTP arguments from PHP 8.2+ backtraces
    • Default operations without an httpMethod to GET, preserve explicit httpMethod casing, and reject invalid httpMethod values
    • Require header location values to be strings or non-empty arrays of strings
    • Reject non-finite float command values in request locations
    • Return body response location values as strings instead of PSR-7 streams
    • Return raw PSR-7 responses in the response result key when the process client option is false
    • Allow operations to override response processing with the process operation option
    • Support JSON response fields with multiple allowed type values
    • Reject scalar top-level JSON response bodies
    • Let native JsonException report JSON location encoding and decoding failures
    • Escape unsafe service metadata and response values in generated exceptions
    • Require custom implementations and subclasses of public service APIs to match native method signatures
    • Require custom parameter filters and extension points to accept exact value types instead of relying on scalar coercion
    • Validate cast integer values against string enum, pattern, and length constraints
    • Match string enum values strictly by type and value
    • Normalize stringable command values for string parameters during validation
    • Treat explicit false values as present in Parameter::has() while omitted required and static flags remain absent
    • Limit XML response traversal and additional-property conversion to 512 nested elements by default
    • Serialize XML request scalar element text with XMLWriter text escaping instead of CDATA sections
    • Honor the documented GuzzleClient response_locations option when building the default deserializer
    • Reject invalid GuzzleClient configuration option values
    • Reject loose parameter schema values instead of normalizing them
    • Require null schema types to match only null values
    • Improve PHPDoc for service client transformers, command handler stacks, and service description, operation, and parameter schema arrays
    • Mark Operation, ValidatedDescriptionHandler, and Rfc3986Serializer as soft-final with @final annotations
    • Trim XML response text nodes with XML whitespace characters only
    Open source →
  2. 1.7.3 17 Jul 2026
    Release notes
    • Require guzzlehttp/guzzle ^7.15 and guzzlehttp/psr7 ^2.13
    • Require guzzlehttp/command ^1.5.3 and guzzlehttp/uri-template ^1.0.10
    • Replace deprecated Guzzle JSON utility methods with native JSON functions
    • Normalize operation HTTP methods with locale-independent ASCII uppercasing
    • Capitalize magic command names with locale-independent ASCII folding
    Open source →
    Release notes
    • Require guzzlehttp/guzzle ^7.15 and guzzlehttp/psr7 ^2.13
    • Require guzzlehttp/command ^1.5.3 and guzzlehttp/uri-template ^1.0.10
    • Replace deprecated Guzzle JSON utility methods with native JSON functions
    • Normalize operation HTTP methods with locale-independent ASCII uppercasing
    • Capitalize magic command names with locale-independent ASCII folding
    Open source →
  3. 1.7.2 08 Jul 2026
    Release notes
    • Require guzzlehttp/guzzle ^7.13.3 and guzzlehttp/psr7 ^2.12.4
    • Require guzzlehttp/command ^1.5.2 and guzzlehttp/uri-template ^1.0.9
    • Pass explicit trim characters ahead of the PHP 8.6 trim default change
    Open source →
    Release notes
    • Require guzzlehttp/guzzle ^7.13.3 and guzzlehttp/psr7 ^2.12.4
    • Require guzzlehttp/command ^1.5.2 and guzzlehttp/uri-template ^1.0.9
    • Pass explicit trim characters ahead of the PHP 8.6 trim default change
    Open source →
  4. 1.7.1 23 Jun 2026
    Release notes
    • Require guzzlehttp/guzzle ^7.12.3 and guzzlehttp/psr7 ^2.12.3
    • Require guzzlehttp/command ^1.5.1 and guzzlehttp/uri-template ^1.0.8
    • Fixed XML response parsing for default-namespace sentAs object properties
    • Report PCRE errors separately from ordinary schema pattern mismatches
    Open source →
    Release notes
    • Require guzzlehttp/guzzle ^7.12.3 and guzzlehttp/psr7 ^2.12.3
    • Require guzzlehttp/command ^1.5.1 and guzzlehttp/uri-template ^1.0.8
    • Fixed XML response parsing for default-namespace sentAs object properties
    • Report PCRE errors separately from ordinary schema pattern mismatches
    Open source →
  5. 1.7.0 16 Jun 2026
    Release notes
    • Require guzzlehttp/guzzle ^7.12, guzzlehttp/psr7 ^2.12, and guzzlehttp/uri-template ^1.0.7
    • Deprecate invalid GuzzleClient configuration option values
    • Deprecate non-finite float location values; 2.0 rejects them
    Open source →
    Release notes
    • Require guzzlehttp/guzzle ^7.12, guzzlehttp/psr7 ^2.12, and guzzlehttp/uri-template ^1.0.7
    • Deprecate invalid GuzzleClient configuration option values
    • Deprecate non-finite float location values; 2.0 rejects them
    Open source →
  6. 1.6.2 12 Jun 2026
    Release notes
    • Fixed non-finite float values emitting coercion warnings on PHP 8.5
    Open source →
    Release notes
    • Fixed non-finite float values emitting coercion warnings on PHP 8.5
    Open source →
  7. 1.6.1 04 Jun 2026
    Release notes
    • Allow deprecated null header location values to normalize to empty strings
    Open source →
    Release notes
    • Allow deprecated null header location values to normalize to empty strings
    Open source →
  8. 1.6.0 02 Jun 2026
    Release notes
    • Require guzzlehttp/guzzle ^7.11 and guzzlehttp/psr7 ^2.11
    • Require guzzlehttp/command ^1.5 and guzzlehttp/uri-template ^1.0.6
    • Deprecate the legacy baseUrl service description option; use baseUri instead
    • Deprecate the legacy responseClass operation option; use responseModel instead
    • Deprecate non-uppercase operation httpMethod values; 2.0 preserves method casing
    • Deprecate non-string and empty-array header location values
    • Deprecate loose parameter schema values and reject values that cannot be safely normalized
    Open source →
    Release notes
    • Require guzzlehttp/guzzle ^7.11 and guzzlehttp/psr7 ^2.11
    • Require guzzlehttp/command ^1.5 and guzzlehttp/uri-template ^1.0.6
    • Deprecate the legacy baseUrl service description option; use baseUri instead
    • Deprecate the legacy responseClass operation option; use responseModel instead
    • Deprecate non-uppercase operation httpMethod values; 2.0 preserves method casing
    • Deprecate non-string and empty-array header location values
    • Deprecate loose parameter schema values and reject values that cannot be safely normalized
    Open source →
  9. 1.5.4 02 Jun 2026
    Release notes
    Open source →
    Release notes
    • Prevent XML CDATA injection during request serialization (GHSA-q8r6-5hfw-5jff)
    Open source →
  10. 1.5.3 02 Jun 2026
    Release notes
    • Harden request serialization state after failures
    • Preserve explicit null JSON response properties
    • Validate ToArrayInterface object properties after conversion
    • Enforce zero-valued schema validation bounds
    Open source →
    Release notes
    • Harden request serialization state after failures
    • Preserve explicit null JSON response properties
    • Validate ToArrayInterface object properties after conversion
    • Enforce zero-valued schema validation bounds
    Open source →
  11. 1.5.2 22 May 2026
    Release notes
    • Fix request serialization for validation-only additionalParameters
    Open source →
  12. 1.5.1 20 May 2026
    Release notes
    • Replace deprecated Guzzle JSON helper functions
    • Serialize and validate header location values
    Open source →
  13. 1.5.0 18 May 2026
    Release notes
    • Add PHP 8.5 support
    • Require guzzlehttp/guzzle ^7.10, guzzlehttp/psr7 ^2.8, and guzzlehttp/command ^1.4
    • Fix recursive parameter model inheritance
    Open source →
  14. 1.4.3 18 May 2026
    Release notes
    • Handle malformed XML responses safely
    • Fix multipart request Content-Type header
    Open source →
  15. 1.4.2 04 Feb 2025
    Release notes
    • Add PHP 8.4 support
    Open source →
  16. 1.4.1 03 Dec 2023
    Release notes
    • Add PHP 8.3 support
    Open source →
  17. 1.4.0 21 May 2023
    Release notes
    • Add PHP 8.2 support
    • Fix PHP 8.1 deprecation notices
    • Bump minimum Guzzle dependency versions
    Open source →
  18. 1.3.2 03 Mar 2022
    Release notes
    • Fix http_build_query on PHP 8.1
    • Bump minimum Guzzle dependency versions
    Open source →
  19. 1.3.1 07 Oct 2021
    Release notes
    • Restore lower minimum dependency versions
    Open source →
  20. 1.3.0 14 Aug 2021
    Release notes
    • Restore PHP 7.2 support
    • Add PHP 8.1 support
    • Add support for PSR-7 2.x
    • Add support for guzzlehttp/uri-template 1.x
    • Add missing fallback to GET
    Open source →
  21. 1.2.0 13 Nov 2020
    Release notes
    • Update to Guzzle 7
    • Raise the minimum PHP version to 7.3
    • Add guzzlehttp/uri-template dependency
    Open source →
  22. 1.1.3 06 Oct 2017
    Release notes
    • Use wire names when deserializing named JSON arrays
    • Improve invalid parameter error messages
    Open source →
  23. 1.1.2 19 May 2017
    Release notes
    • Restore default values during validation
    • Fix inherited operation parameters
    Open source →
  24. 1.1.1 15 May 2017
    Release notes
    • Fix duplicate filter application
    • Avoid mutating commands during validation
    • Add response model filter support
    • Improve JSON array response handling
    Open source →
  25. 1.1.0 31 Jan 2017
    Release notes
    • Add configurable query parameter serialization
    • Format values before validation
    • Improve nested JSON array handling
    Open source →
  26. 1.0.1 13 Jan 2017
    Release notes
    • Fix query parameter serialization
    • Fix multipart request serialization
    • Name the validation middleware in the handler stack
    Open source →
  27. 1.0.0 24 Nov 2016
    Release notes
    • Add Guzzle 6 support
    • Add PSR-7 request and response support
    • Replace event subscribers with middleware-compatible handlers
    • Rename postField and postFile request locations to formParam and multipart
    Open source →
  28. 0.6.0 21 Oct 2016

    Nothing published for this version

  29. 0.5.0 23 Dec 2014

    Nothing published for this version

  30. 0.4.0 03 Nov 2014

    Nothing published for this version

  31. 0.3.0 01 Jun 2014

    Nothing published for this version

  32. 0.2.0 30 Mar 2014

    Nothing published for this version

  33. 0.1.0 15 Mar 2014

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive