Release a reservation the buyer will not pay for
Requires the X-Customer-Session header. The enterprise service API key is OPTIONAL (with a key, results are additionally scoped to the workspace pinned to it). Abandons the PENDING sale and returns its inventory (and its seats) to stock, so the buyer can start over without waiting for the reservation to expire. It is the counterpart of pending_sale_in_progress: when POST /customer/orders rejects with that reason, the landing page can offer continue paying (/payment, idempotent) or start over (this route). It ONLY releases with evidence that nobody started the payment: if Bold reports any transaction, if a provider response is already stored, or if the payment goes through a rail we cannot query, it responds 409 with details.reason = payment_in_flight and the sale is left intact. If the gateway does not respond, 503 (gateway_unreachable): retry later. The sale must belong to the session’s buyer (and, with a key, to the workspace pinned to it): anything else is 404. {id} accepts the sale id or its reference. Limited to 10 calls per minute per buyer.
/customer/orders/{id}/releaseAuthorizationAPI key · headerrequiredAPI key prefixed with Bearer . Alternative: the x-api-key header with the raw key. Available scopes: read and write (see /.well-known/oauth-protected-resource).
x-api-keyAPI key · headerrequiredRaw API key (without Bearer ), alternative to Authorization.
idstringrequiredX-Workspace-IdstringActive workspace to operate on. Optional: when omitted, the default workspace of the user who owns the key is used (pickActiveOrg).
OK
dataCustomerOrderReleaserequiredShow propertiesHide properties
releasedbooleanrequiredThe sale is now ABANDONED and its inventory went back to stock. A rejection never lands here: it is returned as an error with details.reason.
Missing or invalid credential.
errorobjectrequiredShow propertiesHide properties
codestringrequiredmessagestringrequiredretryablebooleanrequireddetailsanyInsufficient role or resource not accessible.
errorobjectrequiredShow propertiesHide properties
codestringrequiredmessagestringrequiredretryablebooleanrequireddetailsanyResource does not exist or is out of scope.
errorobjectrequiredShow propertiesHide properties
codestringrequiredmessagestringrequiredretryablebooleanrequireddetailsanyConflict: the resource does not allow this operation in its current state.
errorobjectrequiredShow propertiesHide properties
codestringrequiredmessagestringrequiredretryablebooleanrequireddetailsanyRequest body/parameter validation failed.
errorobjectrequiredShow propertiesHide properties
codestringrequiredmessagestringrequiredretryablebooleanrequireddetailsanyToo many requests: rate limit exceeded.
errorobjectrequiredShow propertiesHide properties
codestringrequiredmessagestringrequiredretryablebooleanrequireddetailsanyService unavailable: an external dependency is down or initialization failed.
errorobjectrequiredShow propertiesHide properties
codestringrequiredmessagestringrequiredretryablebooleanrequireddetailsany
