v56

latestOpenAPI 3.0.0raw.githubusercontent.com2026-08-03113163377.5 KB
BlockTrades

Execute block trade

Execute a block trade with selected offers.

Executes a parent block trade by selecting specific offers from required signers.

Requirements:

  • Called by block trade initiator
  • All selected offers must have valid, unexpired signatures
  • Required signers must have submitted offers for all markets
  • Block trade must be in READY_TO_EXECUTE state

Execution Process:

  • All trades processed together
  • Creates fills and updates balances upon success
  • Participants receive fill notifications

Returns: Executed block trade with status (COMPLETED/FAILED), fill details, timestamps, and settlement info.

post/block-trades/{block_trade_id}/execute

Path parameters

block_trade_idstring required

Block Trade ID

Request body

execution_noncestring required

Unique nonce for this execution request

selected_offersstring[]

Array of offer IDs selected for execution (offers are atomic, not partial)

signaturesobject required

Map of offer IDs to initiator signatures accepting each offer. Block id if it is a direct block trade.

Example request

{
  "execution_nonce": "execution_001"
}

Response

OK

block_expirationinteger

Unix timestamp in milliseconds when block expires

block_idstring

Backend-generated unique identifier

block_type'DIRECT' | 'OFFER_BASED'
created_atinteger

When block was created

failure_reasonstring

Reason for failure (if status is FAILED)

initiatorstring

Account that initiated this block trade

last_updated_atinteger

When block was last updated

noncestring

Original block nonce

parent_block_idstring

Parent block ID (if offer-based)

required_signersstring[]

List of accounts that can participate in the block trade

signaturesobject

Current signatures on this block (for signature verification)

status'CREATED' | 'OFFER_COLLECTION' | 'READY_TO_EXECUTE' | 'EXECUTING' | 'PENDING_SETTLEMENT' | 'COMPLETED' | 'FAILED' | 'CANCELLED'
tradesobject

Map of market to trade details

Example response

{
  "block_expiration": 1640995800000,
  "block_id": "block_456",
  "created_at": 1640995200000,
  "initiator": "0x123...abc",
  "last_updated_at": 1640995400000,
  "nonce": "67890",
  "parent_block_id": "block_123"
}