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 toolorder.release_hold· SDKclient.call('order.release_hold', …) - Events:
order.hold.released
Input (JSON Schema)
Section titled “Input (JSON Schema)”{ "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"}Result (200)
Section titled “Result (200)”{ "additionalProperties": false, "properties": { "holder": { "type": "string" }, "order_id": { "type": "string" }, "released": { "type": "boolean" } }, "required": [ "order_id", "holder", "released" ], "type": "object"}Errors
Section titled “Errors”validation_failed (400) · unauthorized (401) · forbidden (403) · conflict (409) · internal (500)