Cancel order
URL — No public environment serves this socket yet.
Op cancelOrder
Neither is refused — there is nothing to cancel; both is refused too, for the same reason account and accountId are.
clientOrderId exists for the window where a submit has been offered but its QUEUED fact has not reached this member yet, so you hold no orderId. In that window the ack’s orderId is null and the owner resolves the order itself; any refusal then arrives as orderRejected carrying your clientOrderId, so the command is correlatable either way.
Switch on command, not on clientOrderId alone. A refused cancel arrives as orderRejected carrying the order’s clientOrderId — the same key a refused submit would carry — so a client matching on the key alone will show a cancel’s refusal as though the order had never been placed. orderRejected.command is SUBMIT or CANCEL and is what tells them apart.
A cancel can also fail a second way: the venue rejects it, which arrives on the order channel as an orderUpdate with transition: CANCEL_REJECTED rather than as an orderRejected. The owner’s refusal and the venue’s are different events; handle both or a failed cancel will sometimes look like silence.
Request parameters
Response parameters
Offered, like a submit. orderId echoes the order this edge resolved, and is null when you named a clientOrderId this member has not folded yet — the owner resolves it from its own pending book. A null here is not a failure.