Skip to main content
POST
/
communications
/
block-trade-proposals
Propose Block Trade
curl --request POST \
  --url https://external-api.kalshi.com/trade-api/v2/communications/block-trade-proposals \
  --header 'Content-Type: application/json' \
  --header 'KALSHI-ACCESS-KEY: <api-key>' \
  --header 'KALSHI-ACCESS-SIGNATURE: <api-key>' \
  --header 'KALSHI-ACCESS-TIMESTAMP: <api-key>' \
  --data '
{
  "buyer_user_id": "<string>",
  "seller_user_id": "<string>",
  "market_ticker": "<string>",
  "price_centi_cents": 2,
  "centicount": 2,
  "expiration_ts": "2023-11-07T05:31:56Z",
  "buyer_subtrader_id": "<string>",
  "buyer_subaccount": 31,
  "seller_subtrader_id": "<string>",
  "seller_subaccount": 31
}
'
{
  "block_trade_proposal_id": "<string>"
}

Authorizations

KALSHI-ACCESS-KEY
string
header
required

Your API key ID

KALSHI-ACCESS-SIGNATURE
string
header
required

RSA-PSS signature of the request

KALSHI-ACCESS-TIMESTAMP
string
header
required

Request timestamp in milliseconds

Body

application/json
buyer_user_id
string
required

User ID of the buyer

seller_user_id
string
required

User ID of the seller

market_ticker
string
required

The ticker of the market for this block trade

price_centi_cents
integer<int64>
required

Price in centi-cents

Required range: x >= 1
centicount
integer<int64>
required

Number of contracts in centicounts

Required range: x >= 1
maker_side
enum<string>
required

The maker side of the trade

Available options:
yes,
no
expiration_ts
string<date-time>
required

Expiration time of the proposal

buyer_subtrader_id
string

Subtrader ID of the buyer. Provide either this or buyer_subaccount, not both.

buyer_subaccount
integer

User-managed subaccount number of the buyer (0 for primary, 1-63 for numbered subaccounts). Provide either this or buyer_subtrader_id, not both.

Required range: 0 <= x <= 63
seller_subtrader_id
string

Subtrader ID of the seller. Provide either this or seller_subaccount, not both.

seller_subaccount
integer

User-managed subaccount number of the seller (0 for primary, 1-63 for numbered subaccounts). Provide either this or seller_subtrader_id, not both.

Required range: 0 <= x <= 63

Response

Block trade proposal created successfully

block_trade_proposal_id
string
required

The ID of the newly created block trade proposal