Cancel an order's fulfillment orders without canceling the order

Selects the order's fulfillment orders oldest first (created, then id), at most limit (default every one), and cancels the open ones: each releases exactly its open reservation (reservation_short when a legacy reservation was smaller). Already canceled and closed (shipped) ones are left as they are and listed as skipped. The order itself is not changed. Nothing open: outcome unchanged.

Scope: fulfillment:write, channel:write or admin. A permission group made before the Channel API scopes existed grants it as fulfillment-orders:manage.

Idempotency: send Idempotency-Key; a retry with the same key replays the first answer.

Rate limit: write class, 1,200 requests per minute per tenant by default (read class 6,000). Every response carries X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset; a refusal is 429 rate_limited with Retry-After.

Path Params
string
required
length between 1 and 300

The uuid, a legacy 24-hex id, or ext:: (URL-encoded).

Body Params
string
length between 1 and 255
boolean
integer
1 to 100

Act on at most this many of the order's fulfillment orders, oldest first (created, then id). Default: every one. The legacy channel services addressed by order acted on the first two.

Headers
string
length between 7 and 50

Any string of 7 to 50 characters that identifies this request (an order number, a webhook id). A retry with the same key and the same body answers the first result with Idempotent-Replayed: true; the same key with a different body is 422 idempotency_key_reused; a concurrent request with the same key is 409 in_progress with Retry-After. Recommended on every write.

Responses

Language
Credentials
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json