Skip to Content
API ReferenceREST APIGET /fee/brackets/info

Fee Tiers

01 Exchange uses a volume-based fee tier system. Maker and taker rates decrease as your 30-day rolling volume increases. Fees are also returned per-trade in GET /trades.

Fee Schedule

Tier30-Day VolumeTakerMaker
1≤ $5M0.035%0.010%
2> $5M0.030%0.005%
3> $25M0.025%0%
4> $100M0.023%0%
5> $1B0.020%0%

[!NOTE] Fee rates are stored internally as parts-per-million (ppm). Divide by 10000 to get a percentage: 350 ppm → 0.035%.


GET /fee/brackets/info

Returns the full fee bracket table, including any discounted tiers.

curl https://zo-mainnet.n1.xyz/fee/brackets/info

Response

An array of [tier_index, { maker_fee_ppm, taker_fee_ppm }] tuples. Indices 0–4 are the standard tiers; indices 5–9 are discounted variants.

[ [0, { "maker_fee_ppm": 100, "taker_fee_ppm": 350 }], [1, { "maker_fee_ppm": 50, "taker_fee_ppm": 300 }], [2, { "maker_fee_ppm": 0, "taker_fee_ppm": 250 }], [3, { "maker_fee_ppm": 0, "taker_fee_ppm": 230 }], [4, { "maker_fee_ppm": 0, "taker_fee_ppm": 200 }] ]
import requests data = requests.get("https://zo-mainnet.n1.xyz/fee/brackets/info").json() for tier_index, rates in data: taker_pct = rates["taker_fee_ppm"] / 10000 maker_pct = rates["maker_fee_ppm"] / 10000 print(f"Tier {tier_index + 1}: taker={taker_pct:.4f}% maker={maker_pct:.4f}%")

GET /account/{id}/fee/tier

Returns the current fee tier index for an account, based on its 30-day rolling volume.

curl https://zo-mainnet.n1.xyz/account/12345/fee/tier

Response

A single integer: the zero-based tier index. Indices 0–4 map to standard Tiers 1–5; indices 5–9 map to discounted Tiers 1–5.

0
import requests account_id = 12345 tier_index = requests.get(f"https://zo-mainnet.n1.xyz/account/{account_id}/fee/tier").json() is_discounted = tier_index >= 5 display_tier = (tier_index - 5 + 1) if is_discounted else (tier_index + 1) print(f"Account is on Tier {display_tier}" + (" (discounted)" if is_discounted else ""))

GET /market/{marketId}/fees/taker/{accountId}

Returns the effective taker fee rate for a specific account on a specific market.

curl https://zo-mainnet.n1.xyz/market/0/fees/taker/12345

Response

A decimal representing the fee rate (not a percentage). Multiply by 100 to get a percentage.

0.00035

GET /market/{marketId}/fees/maker/{accountId}

Returns the effective maker fee rate for a specific account on a specific market.

curl https://zo-mainnet.n1.xyz/market/0/fees/maker/12345

Response

0.0001

Example: Fetching Your Rates

import requests NORD_URL = "https://zo-mainnet.n1.xyz" market_id = 0 account_id = 12345 taker = requests.get(f"{NORD_URL}/market/{market_id}/fees/taker/{account_id}").json() maker = requests.get(f"{NORD_URL}/market/{market_id}/fees/maker/{account_id}").json() print(f"Taker: {taker * 100:.4f}%") print(f"Maker: {maker * 100:.4f}%") # Estimate fee on a $10,000 order order_value = 10_000 print(f"Estimated taker fee: ${order_value * taker:.4f}")
Last updated on