Skip to main content
POST
Amend Order (V2)
Amending only expiry or decreasing size preserves queue position. Increasing size or changing price forfeits queue position and places the order at the back of the queue.

Authorizations

KALSHI-ACCESS-KEY
string
header
required

Your API key ID

KALSHI-ACCESS-SIGNATURE
string
header
required

Base64 signature of the pre-sign text (timestamp + method + path) made with the API key's algorithm - RSA-PSS with SHA-256 for RSA keys, Ed25519 for Ed25519 keys

KALSHI-ACCESS-TIMESTAMP
string
header
required

Request timestamp in milliseconds

Path Parameters

order_id
string
required

Order ID

Query Parameters

subaccount
integer

Subaccount number (0 for primary, 1-63 for subaccounts). Defaults to 0. Subaccount-restricted API keys default to their locked subaccount and must omit this parameter or pass their locked subaccount.

Required range: x >= 0

Body

application/json
ticker
string
required

Market ticker

side
enum<string>
required

Side of the order

Available options:
bid,
ask
price
string
required

Updated price for the order in fixed-point dollars.

Example:

"0.5600"

count
string
required

Updated total/max fillable count for the order. Set this to the order's already filled count plus the desired resting remaining count after the amend.

Example:

"10.00"

client_order_id
string

The original client-specified order ID to be amended

updated_client_order_id
string

The new client-specified order ID after amendment

expiration_time
integer<int64>

New Unix expiration timestamp in seconds. Omit to preserve the current expiry, or use 0 to remove it (good-till-canceled). A nonzero expiry must be in the future. Send the current price and total quantity for an expiry-only amendment; this preserves queue position.

Required range: x >= 0
exchange_index
integer

Exchange shard index. If omitted, auto-routes when ticker is provided; otherwise defaults to 0. Use -1 to require auto-routing by ticker.

Example:

0

Response

Order amended successfully

order_id
string
required
ts_ms
integer<int64>
required

Matching engine timestamp at which the amend was processed, as Unix epoch milliseconds.

client_order_id
string
remaining_count
string | null

Number of resting contracts remaining after the amend. This is the actual post-amend resting quantity, not the request's total/max fillable count. Only present when the amend caused a fill or changed the resting size.

Example:

"10.00"

fill_count
string | null

Number of contracts filled as a result of the amend crossing the book. Only present when fills occurred or remaining size changed.

Example:

"10.00"

average_fill_price
string | null

Volume-weighted average fill price for fills resulting from the amend. Only present when fills occurred.

Example:

"0.5600"

average_fee_paid
string | null

Volume-weighted average fee paid per contract for fills resulting from the amend. Only present when fills occurred.

Example:

"0.5600"