Skip to content
v0.3

order.hold

Hold an order under holder‘s name, blocking fulfillment until that holder releases it. Other holders’ holds are untouched. Idempotent by state: re-holding under the same holder returns the existing hold.

  • Scope: order.write
  • System: no
  • Reachable from: POST /v1/commands/order.hold (tenant credential) · MCP tool order.hold · SDK client.call('order.hold', …)
  • Events: order.hold.applied
{
"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": {
"applied": {
"type": "boolean"
},
"hold_id": {
"type": "string"
},
"holder": {
"type": "string"
},
"order_id": {
"type": "string"
}
},
"required": [
"order_id",
"hold_id",
"holder",
"applied"
],
"type": "object"
}

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