Skip to content
v0.3

order.release_hold

Release ONE holder’s hold. Any other holder’s hold keeps blocking fulfillment. Idempotent by state: releasing what is not held succeeds without an event.

  • Scope: order.write
  • System: no
  • Reachable from: POST /v1/commands/order.release_hold (tenant credential) · MCP tool order.release_hold · SDK client.call('order.release_hold', …)
  • Events: order.hold.released
{
"properties": {
"holder": {
"maxLength": 64,
"minLength": 1,
"pattern": "^[a-z0-9][a-z0-9._:-]*$",
"type": "string"
},
"order_id": {
"minLength": 1,
"type": "string"
},
"reason": {
"maxLength": 500,
"type": "string"
}
},
"required": [
"order_id",
"holder"
],
"type": "object"
}
{
"additionalProperties": false,
"properties": {
"holder": {
"type": "string"
},
"order_id": {
"type": "string"
},
"released": {
"type": "boolean"
}
},
"required": [
"order_id",
"holder",
"released"
],
"type": "object"
}

validation_failed (400) · unauthorized (401) · forbidden (403) · conflict (409) · internal (500)