PATCH
Modify an order

Authorizations

Authorization
string
header
required

The end user's JWT access token, sent as Authorization: Bearer <token>.

Obtain one from POST /partner/customers or POST /partner/customers/login — both return it as token. It identifies which of your users a call is made for, and is sent alongside your X-API-Key on every authenticated endpoint.

Event discovery, categories, subcategories and scores are public and need no token.

X-API-Key
string
header
required

ISV / partner credential — public half. Required on every request.

Identifies the integration partner (ISV) making the call. Issued by Dime Trades when the ISV is onboarded and sent on every /partner/* endpoint:

  • On the two partner endpoints that create accounts or issue tokens (POST /partner/customers, POST /partner/customers/login), it is accompanied by X-API-Secret and is the only authentication — there is no user token yet.
  • On every other partner endpoint it is sent alongside the user's Authorization: Bearer <token>: the API key says which platform is calling, the bearer token says which user it is calling for.

Credentials are scoped to one or more brands; using a key with a brandId outside that scope returns 403. Staging and production keys are separate. The key identifies your platform — treat it as a backend credential.

Path Parameters

orderId
string<uuid>
required

The UUID of the order.

Example:

"019f2cfb-9df3-733c-b8af-42a3620ee455"

Body

application/json
price
integer
required

New price in whole cents (1–99). A fractional value is rejected with 400 and code 1002.

Required range: 1 <= x <= 99
Example:

48

quantity
integer

New total quantity, in whole contracts. A fractional value is rejected with 400 and code 1002.

Required range: x >= 1
Example:

12

Response

Modification request accepted.

data
ModifyOrderAck · object

Acknowledgement returned by PATCH /orders/{orderId} once the modify command is published to the matching engine. newPrice is expressed in orderbook terms for a converted (SELL) order (100 - <submitted price>). warning is only present when the modification (a price change, or a quantity increase) will cause the order to lose its queue priority — see ModifyOrderService.run (willLosePriority); it is omitted entirely otherwise, it is never null. pending_modify is an acknowledgement value, not an order status. It means the modify command was published to the matching engine; it is never written to the order. Once the engine confirms, the order keeps its live status (open or partial) with the new price/quantity applied — a successful modify never changes status. Only live orders can be modified; a terminal one (filled, partially_filled, canceled, rejected, expired) returns a 400.

errors
array