Skip to main content
POST
/
orders
Post multiple orders
curl --request POST \
  --url https://clob.polymarket.com/orders \
  --header 'Content-Type: application/json' \
  --header 'POLY_ADDRESS: <api-key>' \
  --header 'POLY_API_KEY: <api-key>' \
  --header 'POLY_PASSPHRASE: <api-key>' \
  --header 'POLY_SIGNATURE: <api-key>' \
  --header 'POLY_TIMESTAMP: <api-key>' \
  --data '
[
  {
    "order": {
      "maker": "0x1234567890123456789012345678901234567890",
      "signer": "0x1234567890123456789012345678901234567890",
      "taker": "0x0000000000000000000000000000000000000000",
      "tokenId": "0xabc123def456...",
      "makerAmount": "100000000",
      "takerAmount": "200000000",
      "side": "BUY",
      "expiration": "1735689600",
      "nonce": "0",
      "feeRateBps": "30",
      "signature": "0x1234abcd...",
      "salt": 1234567890,
      "signatureType": 0
    },
    "owner": "f4f247b7-4ac7-ff29-a152-04fda0a8755a",
    "orderType": "GTC",
    "deferExec": false
  },
  {
    "order": {
      "maker": "0x1234567890123456789012345678901234567890",
      "signer": "0x1234567890123456789012345678901234567890",
      "taker": "0x0000000000000000000000000000000000000000",
      "tokenId": "0xdef456abc789...",
      "makerAmount": "200000000",
      "takerAmount": "100000000",
      "side": "SELL",
      "expiration": "1735689600",
      "nonce": "0",
      "feeRateBps": "30",
      "signature": "0x5678efgh...",
      "salt": 1234567891,
      "signatureType": 0
    },
    "owner": "f4f247b7-4ac7-ff29-a152-04fda0a8755a",
    "orderType": "GTC",
    "deferExec": false
  }
]
'
[
  {
    "success": true,
    "orderID": "0xabcdef1234567890abcdef1234567890abcdef12",
    "status": "live",
    "makingAmount": "100000000",
    "takingAmount": "200000000",
    "errorMsg": ""
  },
  {
    "success": true,
    "orderID": "0xfedcba0987654321fedcba0987654321fedcba09",
    "status": "matched",
    "makingAmount": "200000000",
    "takingAmount": "100000000",
    "transactionsHashes": [
      "0x1234567890abcdef1234567890abcdef12345678"
    ],
    "tradeIDs": [
      "trade-123"
    ],
    "errorMsg": ""
  },
  {
    "success": false,
    "orderID": "",
    "status": "delayed",
    "errorMsg": "Rate limit exceeded for tokenId: 0xdef456abc789..."
  }
]

Authorizations

POLY_API_KEY
string
header
required

Your API key

POLY_ADDRESS
string
header
required

Ethereum address associated with the API key

POLY_SIGNATURE
string
header
required

HMAC signature of the request

POLY_PASSPHRASE
string
header
required

API key passphrase

POLY_TIMESTAMP
string
header
required

Unix timestamp of the request

Body

application/json
Maximum array length: 15
order
object
required
owner
string
required

UUID of the API key owner

Example:

"f4f247b7-4ac7-ff29-a152-04fda0a8755a"

orderType
enum<string>
default:GTC

Time in force

Available options:
GTC,
FOK,
GTD,
FAK
deferExec
boolean
default:false

Whether to defer execution

Response

Orders successfully processed. Returns an array of order responses, one for each order in the request.

success
boolean
required

Whether the order was successfully processed

Example:

true

orderID
string
required

Unique identifier for the order (order hash)

Example:

"0xabcdef1234567890abcdef1234567890abcdef12"

status
enum<string>
required

Status of the order after processing

Available options:
live,
matched,
delayed
makingAmount
string

Amount the maker is providing in fixed-math with 6 decimals

Example:

"100000000"

takingAmount
string

Amount the taker is providing in fixed-math with 6 decimals

Example:

"200000000"

transactionsHashes
string[]

Array of transaction hashes (present when status is 'matched')

Example:
[
"0x1234567890abcdef1234567890abcdef12345678"
]
tradeIDs
string[]

Array of trade IDs (present when status is 'matched')

errorMsg
string

Error message (empty on success)

Example:

""