POST /api/v1/orders
Places a new order on the specified exchange.
Parameters
Exchange identifier:
polymarket, kalshi, limitless, opinion, or predictfun.Body
The market to place the order on.
The outcome to trade (e.g.,
"Yes" or "No").Order side:
"buy" or "sell".Limit price between 0 and 1 (e.g.,
0.65 for 65 cents).Order size in contracts/shares.
Optional exchange-specific parameters.
| Key | Values | Description |
|---|---|---|
order_type | gtc (default), ioc, fok, gtd | Time-in-force / execution type. Unsupported combinations return 501 per exchange. |
expiration | Unix timestamp (seconds) | Required when order_type is gtd. Must be at least 60 seconds in the future. Polymarket only. |
Optional per-request exchange credentials (base64-encoded JSON). When provided, Parsec
creates a transient exchange session instead of using stored credentials.Kalshi:
{ "api_key_id": "...", "private_key": "..." }Polymarket: { "clob_api_key": "...", "clob_api_secret": "...", "clob_api_passphrase": "...", "private_key": "0x..." }For Polymarket transient sessions, private_key is required. The CLOB API
fields are optional.Builder fields (optional)
These fields are only used by builders routing orders on behalf of end-users via impersonation.The end-user’s
customer_id. Required for builder impersonation.EIP-712 fee authorization signed by the end-user’s wallet. Required to collect
fees via fee escrow.
End-user’s wallet address (fee escrow payer). Builder-only.
End-user’s signing wallet address. Builder-only.
Affiliate address override. Builder-only.