Skip to main content
GET
/
v1
/
fee-rate
Get trade fee rate (PM-compat base_fee + polysim fee_rate_bps)
curl --request GET \
  --url https://api.polysimulator.com/v1/fee-rate
{
  "base_fee": 123,
  "fee_rate_bps": 123
}

Query Parameters

token_id
string | null

Outcome-token id whose market's fee rate to return. REQUIRED by the handler (matches PM) — omitting or malforming it returns 400 {"error": "Invalid token id"}.

Response

Successful Response

GET /v1/fee-rate — two-field fee contract.

base_fee mirrors Polymarket's legacy base-fee parameter (observed live 2026-06-10: 1000 on fee-charging markets, 0 on fee-free ones) so ported bots see byte-compatible PM behavior on the PM field. It is NOT the rate you are charged. The effective per-category taker rate actually charged is fee_rate_bps — a polysim extra field (300/400/500/700, or 0 for zero-rate markets).

base_fee
integer
required

Polymarket's legacy base-fee parameter, mirrored byte-for-byte (observed: 1000 on every fee-charging market regardless of category, 0 on fee-free markets). NOT the effective rate.

fee_rate_bps
integer
required

Polysim extra field: the TRUE effective per-category taker rate in basis points actually charged on taker fills (crypto 700, economics/culture/weather/other 500, finance/politics/mentions/tech 400, sports 300, geopolitics 0).