Skip to main content
POST
/
api
/
users
/
{userId}
/
orders
curl --request POST \
  --url https://trade.predexon.com/api/users/{userId}/orders \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '
{
  "venue": "polymarket",
  "tokenId": "71321045679252212",
  "side": "buy",
  "type": "market",
  "amount": "2"
}
'
{
  "orderId": "0xe69245af3a00e487",
  "venue": "polymarket",
  "marketIdentifier": "polymarket:71321045679252212",
  "tokenId": "71321045679252212",
  "side": "buy",
  "outcome": "Yes",
  "price": "0.53",
  "status": "filled",
  "createdAt": "2026-02-24T18:55:37.445Z",
  "sizeMatched": "3.754716",
  "originalSize": "3.7547",
  "fee": {
    "policyApplied": true,
    "feeBps": 50,
    "platformFeeBps": 0,
    "partnerFeeBps": 50,
    "grossAmount": "2",
    "netOrderAmount": "1.99",
    "maxFeeReserved": "0.01"
  }
}
Legacy /api/users endpoint. New integrations should use Place Order on the accounts path, which supports Polymarket, Predict, Opinion, and Limitless through a single endpoint with a predexonId identifier. This endpoint continues to work unchanged.
Set venue: "predict". Predict requires both marketId and tokenId; alternatively pass a composite marketIdentifier (predict:{marketId}:{tokenId}). Predict charges an exchange fee applied by its matching engine — no fee field is returned.

Authorizations

x-api-key
string
header
required

Path Parameters

userId
string
required

Unique identifier for the user

Body

application/json
side
enum<string>
required

Buy or sell

Available options:
buy,
sell
type
enum<string>
required

Order type

Available options:
limit,
market
venue
enum<string>

Trading venue ('polymarket' or 'predict')

Available options:
polymarket,
predict
tokenId
string

Outcome token ID

marketId
string

Numeric market ID (required for Predict orders)

marketIdentifier
string

Composite identifier (e.g., 'predict:46954:tokenId'). Alternative to providing venue, marketId, and tokenId separately.

amount
string

Stablecoin to spend - USDC.e for Polymarket, USDT for Predict (market BUY only)

size
string

Number of shares (market SELL, all limit orders)

price
string

Price per share, between 0 and 1 (exclusive). Required for limit orders.

Response

Order placed successfully

orderId
string

Unique order identifier

venue
string

Trading venue ('polymarket' or 'predict')

marketIdentifier
string

Composite identifier (e.g., 'polymarket:tokenId' or 'predict:marketId:tokenId')

tokenId
string

Outcome token ID

side
string

Order side: buy or sell

outcome
string

The outcome being traded (e.g., Yes, No)

size
string

Number of shares (when size was provided in request)

price
string | null

Execution or limit price

status
string

Order status: open, filled, cancelled, expired, or pending (transitional)

createdAt
string | null

ISO 8601 timestamp. May be empty for Predict orders.

sizeMatched
string

Number of shares filled

originalSize
string

Original order size in shares

fee
object

Fee metadata (when fees are active)