Skip to main content
POST
/
order
Post a new order
curl --request POST \
  --url https://clob.polymarket.com/order \
  --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
}
'
{
  "success": true,
  "orderID": "0xabcdef1234567890abcdef1234567890abcdef12",
  "status": "live",
  "makingAmount": "100000000",
  "takingAmount": "200000000",
  "errorMsg": ""
}

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
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

Order successfully processed

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:

""