Commerce Enabled contract
Cancel a checkout intent
Cancels the exact checkout intent and releases its inventory reservation idempotently.
Runtime status: unavailable. This is a source contract, not a live access or availability guarantee. Learn more
POST
/partner/ecom/v1/checkout-intents/{checkoutIntentId}/cancelRequest
| Parameter | Location | Requirement | Schema |
|---|---|---|---|
checkoutIntentId | path | Required | {"type":"string","format":"uuid"} |
smokestack-api-version | header | Required | {"type":"string","const":"2026-08-09"} |
x-request-id | header | Optional | {"type":"string","pattern":"^[A-Za-z0-9._:~-]{1,128}$"} |
x-correlation-id | header | Optional | {"type":"string","pattern":"^[A-Za-z0-9._:~-]{1,128}$"} |
idempotency-key | header | Required | {"type":"string","pattern":"^[A-Za-z0-9._:~-]{16,255}$"} |
Request body
{
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"reason": {
"type": "string",
"minLength": 1,
"maxLength": 500
}
},
"required": [
"reason"
],
"additionalProperties": false
}
}
}
}Idempotency
{
"required": true,
"retentionSeconds": 604800,
"replay": "same scoped key and canonical payload returns the stored business status and payload; per-attempt request metadata reflects the retry",
"conflict": "same scoped key with a different canonical payload returns idempotency_conflict"
}Request examples
Templates for your server, not browser code. Replace every placeholder and use your approved origin. For requests with a body, construct request.json / requestBody / request_body from the schema.
# Replace placeholders using your approved server-side integration.
curl --request POST 'https://partner-api.invalid/partner/ecom/v1/checkout-intents/{checkoutIntentId}/cancel' \
--header 'smokestack-api-version: 2026-08-09' \
--header 'idempotency-key: <IDEMPOTENCY_KEY>' \
--header 'Authorization: Bearer <SERVER_ONLY_TOKEN>' \
--header 'Content-Type: application/json' \
--data @request.jsonResponses
200 Successful partner response.
{
"description": "Successful partner response.",
"headers": {
"SMOKESTACK-API-Version": {
"description": "The negotiated compatible contract revision.",
"schema": {
"type": "string",
"const": "2026-08-09"
}
},
"X-Request-ID": {
"description": "The request identifier accepted from the caller or generated by SMOKESTACK.",
"schema": {
"type": "string"
}
},
"X-Correlation-ID": {
"description": "The end-to-end correlation identifier.",
"schema": {
"type": "string"
}
},
"Deprecation": {
"description": "RFC 9745 Structured Field Date (`@` followed by Unix seconds) when an operation or revision is deprecated.",
"schema": {
"type": "string",
"pattern": "^@[0-9]+$",
"example": "@1814400000"
}
},
"Sunset": {
"description": "RFC 8594 HTTP-date when a deprecated operation has a scheduled retirement; servers emit IMF-fixdate in GMT.",
"schema": {
"type": "string",
"example": "Fri, 28 Jan 2028 00:00:00 GMT"
}
},
"Link": {
"description": "Deprecation or successor documentation link; deprecation notices include rel=\"deprecation\".",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/EcomPartnerCheckoutResponse"
}
}
}
}400 Invalid request, cursor, or missing idempotency key.
{
"description": "Invalid request, cursor, or missing idempotency key.",
"headers": {
"SMOKESTACK-API-Version": {
"description": "The negotiated compatible contract revision.",
"schema": {
"type": "string",
"const": "2026-08-09"
}
},
"X-Request-ID": {
"description": "The request identifier accepted from the caller or generated by SMOKESTACK.",
"schema": {
"type": "string"
}
},
"X-Correlation-ID": {
"description": "The end-to-end correlation identifier.",
"schema": {
"type": "string"
}
},
"Deprecation": {
"description": "RFC 9745 Structured Field Date (`@` followed by Unix seconds) when an operation or revision is deprecated.",
"schema": {
"type": "string",
"pattern": "^@[0-9]+$",
"example": "@1814400000"
}
},
"Sunset": {
"description": "RFC 8594 HTTP-date when a deprecated operation has a scheduled retirement; servers emit IMF-fixdate in GMT.",
"schema": {
"type": "string",
"example": "Fri, 28 Jan 2028 00:00:00 GMT"
}
},
"Link": {
"description": "Deprecation or successor documentation link; deprecation notices include rel=\"deprecation\".",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/EcomPartnerError"
}
}
}
}401 Partner authentication required.
{
"description": "Partner authentication required.",
"headers": {
"SMOKESTACK-API-Version": {
"description": "The negotiated compatible contract revision.",
"schema": {
"type": "string",
"const": "2026-08-09"
}
},
"X-Request-ID": {
"description": "The request identifier accepted from the caller or generated by SMOKESTACK.",
"schema": {
"type": "string"
}
},
"X-Correlation-ID": {
"description": "The end-to-end correlation identifier.",
"schema": {
"type": "string"
}
},
"Deprecation": {
"description": "RFC 9745 Structured Field Date (`@` followed by Unix seconds) when an operation or revision is deprecated.",
"schema": {
"type": "string",
"pattern": "^@[0-9]+$",
"example": "@1814400000"
}
},
"Sunset": {
"description": "RFC 8594 HTTP-date when a deprecated operation has a scheduled retirement; servers emit IMF-fixdate in GMT.",
"schema": {
"type": "string",
"example": "Fri, 28 Jan 2028 00:00:00 GMT"
}
},
"Link": {
"description": "Deprecation or successor documentation link; deprecation notices include rel=\"deprecation\".",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/EcomPartnerError"
}
}
}
}403 Partner authority does not permit this operation.
{
"description": "Partner authority does not permit this operation.",
"headers": {
"SMOKESTACK-API-Version": {
"description": "The negotiated compatible contract revision.",
"schema": {
"type": "string",
"const": "2026-08-09"
}
},
"X-Request-ID": {
"description": "The request identifier accepted from the caller or generated by SMOKESTACK.",
"schema": {
"type": "string"
}
},
"X-Correlation-ID": {
"description": "The end-to-end correlation identifier.",
"schema": {
"type": "string"
}
},
"Deprecation": {
"description": "RFC 9745 Structured Field Date (`@` followed by Unix seconds) when an operation or revision is deprecated.",
"schema": {
"type": "string",
"pattern": "^@[0-9]+$",
"example": "@1814400000"
}
},
"Sunset": {
"description": "RFC 8594 HTTP-date when a deprecated operation has a scheduled retirement; servers emit IMF-fixdate in GMT.",
"schema": {
"type": "string",
"example": "Fri, 28 Jan 2028 00:00:00 GMT"
}
},
"Link": {
"description": "Deprecation or successor documentation link; deprecation notices include rel=\"deprecation\".",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/EcomPartnerError"
}
}
}
}404 Partner-safe resource not found.
{
"description": "Partner-safe resource not found.",
"headers": {
"SMOKESTACK-API-Version": {
"description": "The negotiated compatible contract revision.",
"schema": {
"type": "string",
"const": "2026-08-09"
}
},
"X-Request-ID": {
"description": "The request identifier accepted from the caller or generated by SMOKESTACK.",
"schema": {
"type": "string"
}
},
"X-Correlation-ID": {
"description": "The end-to-end correlation identifier.",
"schema": {
"type": "string"
}
},
"Deprecation": {
"description": "RFC 9745 Structured Field Date (`@` followed by Unix seconds) when an operation or revision is deprecated.",
"schema": {
"type": "string",
"pattern": "^@[0-9]+$",
"example": "@1814400000"
}
},
"Sunset": {
"description": "RFC 8594 HTTP-date when a deprecated operation has a scheduled retirement; servers emit IMF-fixdate in GMT.",
"schema": {
"type": "string",
"example": "Fri, 28 Jan 2028 00:00:00 GMT"
}
},
"Link": {
"description": "Deprecation or successor documentation link; deprecation notices include rel=\"deprecation\".",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/EcomPartnerError"
}
}
}
}406 Requested API revision is unsupported.
{
"description": "Requested API revision is unsupported.",
"headers": {
"SMOKESTACK-API-Version": {
"description": "The negotiated compatible contract revision.",
"schema": {
"type": "string",
"const": "2026-08-09"
}
},
"X-Request-ID": {
"description": "The request identifier accepted from the caller or generated by SMOKESTACK.",
"schema": {
"type": "string"
}
},
"X-Correlation-ID": {
"description": "The end-to-end correlation identifier.",
"schema": {
"type": "string"
}
},
"Deprecation": {
"description": "RFC 9745 Structured Field Date (`@` followed by Unix seconds) when an operation or revision is deprecated.",
"schema": {
"type": "string",
"pattern": "^@[0-9]+$",
"example": "@1814400000"
}
},
"Sunset": {
"description": "RFC 8594 HTTP-date when a deprecated operation has a scheduled retirement; servers emit IMF-fixdate in GMT.",
"schema": {
"type": "string",
"example": "Fri, 28 Jan 2028 00:00:00 GMT"
}
},
"Link": {
"description": "Deprecation or successor documentation link; deprecation notices include rel=\"deprecation\".",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/EcomPartnerError"
}
}
}
}409 Idempotency, expiry, or stale-resource conflict.
{
"description": "Idempotency, expiry, or stale-resource conflict.",
"headers": {
"SMOKESTACK-API-Version": {
"description": "The negotiated compatible contract revision.",
"schema": {
"type": "string",
"const": "2026-08-09"
}
},
"X-Request-ID": {
"description": "The request identifier accepted from the caller or generated by SMOKESTACK.",
"schema": {
"type": "string"
}
},
"X-Correlation-ID": {
"description": "The end-to-end correlation identifier.",
"schema": {
"type": "string"
}
},
"Deprecation": {
"description": "RFC 9745 Structured Field Date (`@` followed by Unix seconds) when an operation or revision is deprecated.",
"schema": {
"type": "string",
"pattern": "^@[0-9]+$",
"example": "@1814400000"
}
},
"Sunset": {
"description": "RFC 8594 HTTP-date when a deprecated operation has a scheduled retirement; servers emit IMF-fixdate in GMT.",
"schema": {
"type": "string",
"example": "Fri, 28 Jan 2028 00:00:00 GMT"
}
},
"Link": {
"description": "Deprecation or successor documentation link; deprecation notices include rel=\"deprecation\".",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/EcomPartnerError"
}
}
}
}422 The request is valid JSON but cannot be accepted as commerce authority.
{
"description": "The request is valid JSON but cannot be accepted as commerce authority.",
"headers": {
"SMOKESTACK-API-Version": {
"description": "The negotiated compatible contract revision.",
"schema": {
"type": "string",
"const": "2026-08-09"
}
},
"X-Request-ID": {
"description": "The request identifier accepted from the caller or generated by SMOKESTACK.",
"schema": {
"type": "string"
}
},
"X-Correlation-ID": {
"description": "The end-to-end correlation identifier.",
"schema": {
"type": "string"
}
},
"Deprecation": {
"description": "RFC 9745 Structured Field Date (`@` followed by Unix seconds) when an operation or revision is deprecated.",
"schema": {
"type": "string",
"pattern": "^@[0-9]+$",
"example": "@1814400000"
}
},
"Sunset": {
"description": "RFC 8594 HTTP-date when a deprecated operation has a scheduled retirement; servers emit IMF-fixdate in GMT.",
"schema": {
"type": "string",
"example": "Fri, 28 Jan 2028 00:00:00 GMT"
}
},
"Link": {
"description": "Deprecation or successor documentation link; deprecation notices include rel=\"deprecation\".",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/EcomPartnerError"
}
}
}
}429 Partner rate limit exceeded.
{
"description": "Partner rate limit exceeded.",
"headers": {
"SMOKESTACK-API-Version": {
"description": "The negotiated compatible contract revision.",
"schema": {
"type": "string",
"const": "2026-08-09"
}
},
"X-Request-ID": {
"description": "The request identifier accepted from the caller or generated by SMOKESTACK.",
"schema": {
"type": "string"
}
},
"X-Correlation-ID": {
"description": "The end-to-end correlation identifier.",
"schema": {
"type": "string"
}
},
"Deprecation": {
"description": "RFC 9745 Structured Field Date (`@` followed by Unix seconds) when an operation or revision is deprecated.",
"schema": {
"type": "string",
"pattern": "^@[0-9]+$",
"example": "@1814400000"
}
},
"Sunset": {
"description": "RFC 8594 HTTP-date when a deprecated operation has a scheduled retirement; servers emit IMF-fixdate in GMT.",
"schema": {
"type": "string",
"example": "Fri, 28 Jan 2028 00:00:00 GMT"
}
},
"Link": {
"description": "Deprecation or successor documentation link; deprecation notices include rel=\"deprecation\".",
"schema": {
"type": "string"
}
},
"Retry-After": {
"description": "Seconds until the caller may retry.",
"schema": {
"type": "integer",
"minimum": 0
}
}
},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/EcomPartnerError"
}
}
}
}500 An unexpected error occurred without exposing internal details.
{
"description": "An unexpected error occurred without exposing internal details.",
"headers": {
"SMOKESTACK-API-Version": {
"description": "The negotiated compatible contract revision.",
"schema": {
"type": "string",
"const": "2026-08-09"
}
},
"X-Request-ID": {
"description": "The request identifier accepted from the caller or generated by SMOKESTACK.",
"schema": {
"type": "string"
}
},
"X-Correlation-ID": {
"description": "The end-to-end correlation identifier.",
"schema": {
"type": "string"
}
},
"Deprecation": {
"description": "RFC 9745 Structured Field Date (`@` followed by Unix seconds) when an operation or revision is deprecated.",
"schema": {
"type": "string",
"pattern": "^@[0-9]+$",
"example": "@1814400000"
}
},
"Sunset": {
"description": "RFC 8594 HTTP-date when a deprecated operation has a scheduled retirement; servers emit IMF-fixdate in GMT.",
"schema": {
"type": "string",
"example": "Fri, 28 Jan 2028 00:00:00 GMT"
}
},
"Link": {
"description": "Deprecation or successor documentation link; deprecation notices include rel=\"deprecation\".",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/EcomPartnerError"
}
}
}
}501 The contract operation is published but is not enabled for this partner. Contract publication is not provider activation.
{
"description": "The contract operation is published but is not enabled for this partner. Contract publication is not provider activation.",
"headers": {
"SMOKESTACK-API-Version": {
"description": "The negotiated compatible contract revision.",
"schema": {
"type": "string",
"const": "2026-08-09"
}
},
"X-Request-ID": {
"description": "The request identifier accepted from the caller or generated by SMOKESTACK.",
"schema": {
"type": "string"
}
},
"X-Correlation-ID": {
"description": "The end-to-end correlation identifier.",
"schema": {
"type": "string"
}
},
"Deprecation": {
"description": "RFC 9745 Structured Field Date (`@` followed by Unix seconds) when an operation or revision is deprecated.",
"schema": {
"type": "string",
"pattern": "^@[0-9]+$",
"example": "@1814400000"
}
},
"Sunset": {
"description": "RFC 8594 HTTP-date when a deprecated operation has a scheduled retirement; servers emit IMF-fixdate in GMT.",
"schema": {
"type": "string",
"example": "Fri, 28 Jan 2028 00:00:00 GMT"
}
},
"Link": {
"description": "Deprecation or successor documentation link; deprecation notices include rel=\"deprecation\".",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/EcomPartnerError"
}
}
}
}503 An authoritative dependency is unavailable; the service does not guess.
{
"description": "An authoritative dependency is unavailable; the service does not guess.",
"headers": {
"SMOKESTACK-API-Version": {
"description": "The negotiated compatible contract revision.",
"schema": {
"type": "string",
"const": "2026-08-09"
}
},
"X-Request-ID": {
"description": "The request identifier accepted from the caller or generated by SMOKESTACK.",
"schema": {
"type": "string"
}
},
"X-Correlation-ID": {
"description": "The end-to-end correlation identifier.",
"schema": {
"type": "string"
}
},
"Deprecation": {
"description": "RFC 9745 Structured Field Date (`@` followed by Unix seconds) when an operation or revision is deprecated.",
"schema": {
"type": "string",
"pattern": "^@[0-9]+$",
"example": "@1814400000"
}
},
"Sunset": {
"description": "RFC 8594 HTTP-date when a deprecated operation has a scheduled retirement; servers emit IMF-fixdate in GMT.",
"schema": {
"type": "string",
"example": "Fri, 28 Jan 2028 00:00:00 GMT"
}
},
"Link": {
"description": "Deprecation or successor documentation link; deprecation notices include rel=\"deprecation\".",
"schema": {
"type": "string"
}
},
"Retry-After": {
"description": "Seconds until the caller may retry when known.",
"schema": {
"type": "integer",
"minimum": 0
}
}
},
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/EcomPartnerError"
}
}
}
}Referenced schemas
Only schemas reachable from this operation are shown. The revision-pinned OpenAPI download includes their complete definitions.
EcomPartnerCheckoutResponse
{
"type": "object",
"properties": {
"checkoutIntentId": {
"type": "string",
"format": "uuid"
},
"quoteId": {
"type": "string",
"format": "uuid"
},
"quoteVersion": {
"type": "integer",
"minimum": 1
},
"reservationId": {
"type": "string",
"format": "uuid"
},
"orderId": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"status": {
"type": "string",
"enum": [
"PENDING",
"RESERVED",
"CONFIRMED",
"CANCELLED",
"EXPIRED",
"FAILED"
]
},
"expiresAt": {
"type": "string",
"format": "date-time"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"updatedAt": {
"type": "string",
"format": "date-time"
},
"meta": {
"type": "object",
"properties": {
"requestId": {
"type": "string",
"pattern": "^[A-Za-z0-9._:~-]{1,128}$"
},
"correlationId": {
"type": "string",
"pattern": "^[A-Za-z0-9._:~-]{1,128}$"
},
"apiVersion": {
"type": "string",
"enum": [
"2026-07-28",
"2026-08-09"
]
},
"generatedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"requestId",
"correlationId",
"apiVersion",
"generatedAt"
],
"additionalProperties": {}
}
},
"required": [
"checkoutIntentId",
"quoteId",
"quoteVersion",
"orderId",
"status",
"expiresAt",
"createdAt",
"updatedAt",
"meta"
],
"additionalProperties": {}
}EcomPartnerError
{
"type": "object",
"properties": {
"code": {
"type": "string",
"enum": [
"invalid_request",
"authentication_required",
"permission_denied",
"resource_not_found",
"api_version_not_supported",
"invalid_cursor",
"idempotency_key_required",
"idempotency_conflict",
"quote_rejected",
"quote_expired",
"resource_stale",
"unsupported_currency",
"rate_limited",
"capability_unavailable",
"upstream_unavailable",
"internal_error"
]
},
"message": {
"type": "string",
"minLength": 1,
"maxLength": 500
},
"requestId": {
"type": "string",
"pattern": "^[A-Za-z0-9._:~-]{1,128}$"
},
"correlationId": {
"type": "string",
"pattern": "^[A-Za-z0-9._:~-]{1,128}$"
},
"details": {
"type": "object",
"additionalProperties": {}
},
"retryable": {
"type": "boolean"
}
},
"required": [
"code",
"message",
"requestId",
"correlationId",
"retryable"
],
"additionalProperties": {}
}