Developers
Get Started
OpenAPI ↗
REST API v1 · Developer previewLive API credentials are not yet generally available. Hosted test access is not enabled.

Resources

Error codes

The local sandbox is available for fixtures. The hardened server gateway remains unreleased. A request_in_progress error may also return 503 when result persistence cannot be confirmed.

Local sandbox

CodeHTTPMessage
missing_api_key401An API key is required.
invalid_api_key401The API key is invalid or inactive.
insufficient_scope403The API key does not grant this operation.
not_found404The resource was not found.
invalid_json400The request body must contain valid JSON.
invalid_request422The request does not match the API schema.
invalid_postcode422The postcode format is invalid.
quote_expired409Request a new quote before booking.
quote_mismatch409The shipment route or parcels differ from the selected quote.
idempotency_required400A valid Idempotency-Key header is required.
idempotency_conflict409This idempotency key was used with a different request.
request_in_progress409The request is in progress or awaiting reconciliation.
invalid_cursor400The pagination cursor is invalid.
rate_limit_exceeded429The sandbox request limit was exceeded.
provider_unavailable503Shipping services are temporarily unavailable.
provider_failure502The shipping operation could not be confirmed.
cancellation_not_allowed409The shipment can no longer be cancelled automatically.
label_not_available404This label format is not available.
live_not_available503Live REST API access is not available.
method_not_allowed405The HTTP method is not supported.
payload_too_large413The request body exceeds 256 KiB.
internal_error500The request could not be completed.
collection_not_supported422This service does not support collection booking.

Unreleased server gateway

CodeHTTPMessage
domain_contract_unavailable503The shipping service contract could not be verified.
missing_api_key401An API key is required.
invalid_api_key401The API key is invalid or unavailable.
insufficient_scope403This API key does not have the required scope.
invalid_request422The request is invalid.
not_found404The resource was not found.
idempotency_required400An Idempotency-Key header is required.
idempotency_conflict409This key was already used with a different request.
request_in_progress409The request is in progress or awaiting reconciliation.
rate_limit_exceeded429The request limit was exceeded.
live_not_available503Live REST API access is not enabled.
billing_not_configured503API billing has not been approved or configured.
provider_unavailable503Shipping services are temporarily unavailable.
internal_error500The request could not be completed.
domain_validation_failed422The shipping details could not be accepted.
invalid_cursor400The pagination cursor is invalid.
payload_too_large413The request body exceeds 256 KiB.
quote_expired409The quote has expired.
quote_mismatch409The shipment does not match the quote.
test_live_purchase_forbidden403Test credentials cannot purchase live postage.
hosted_test_not_configured503The hosted test provider is not configured.
unsupported_route422No supported service is available.
invalid_postcode422The postcode is invalid.
operation_not_enabled422This operation is not enabled.
collection_not_enabled422API collection changes are not enabled.
cancellation_not_enabled422API cancellation is not enabled.
label_not_available404This label format is not available.
booking_verification_required503The booking requires PX verification before another attempt.
provider_purchase_disabled503Provider purchasing is disabled.
tracking_ambiguous409Use the shipment ID to identify this tracking number.
invalid_json400The request body must contain valid JSON.