Read balances, your trading fee rate and your profile. Account levels decide which API features you can use.
Account levels
Level
Requirement
Unlocks
1
E-mail verified
Deposits, deposit addresses, order and trade history, balances
2
Phone number verified
Placing and cancelling orders
3
Identity documents verified
Withdrawals, withdrawal history, withdrawal addresses and the transaction list
Internal transfers and balances have no level requirement. A call below the required level answers 403 (peatio) or 401 order.action_level.not_permitted (order entry).
Account level requirements
GET/api/v2/peatio/public/member-levelsPublic
Returns the minimum account level for deposits, withdrawals and trading as configured in the exchange core. Levels: 1 = e-mail verified, 2 = phone verified, 3 = identity documents verified.
Placing orders requires account level 2 (verified phone number). The trading level reported here applies to order and trade history.
Responses
Status
Description
200
Level requirements.
Response fields
Field
Type
Description
deposit.minimum_level
integer
Level for deposits.
withdraw.minimum_level
integer
Level for withdrawals, beneficiaries and transaction history.
trading.minimum_level
integer
Level for /api/v2/peatio/market/* (order placement through finex needs level 2).
import requests
r = requests.get("https://exchange.ex5.com/api/v2/peatio/public/member-levels", timeout=10)
r.raise_for_status()
print(r.json())
const res = await fetch("https://exchange.ex5.com/api/v2/peatio/public/member-levels");
if (!res.ok) throw new Error(`HTTP ${res.status}`);
console.log(await res.json());
List balances
GET/api/v2/peatio/account/balancesAPI key
Returns your account for every visible currency: balance is available funds, locked is reserved by open orders and pending withdrawals. Zero balances are included unless nonzero=true. Coin currencies include your deposit address, or null if none has been generated yet. Paginated.
Parameters
Name
In
Type
Description
nonzero
query
boolean
If true, omit currencies whose balance and locked are both zero.
limit
query
integer
Page size, 1-1000 (default 100).
page
query
integer
Page number, starting at 1 (default 1).
Responses
Status
Description
200
Array of accounts.
401
Rejected by the API gateway: missing/invalid API-key headers, nonce outside the 5 s window, bad signature, inactive key, 2FA disabled on the account, or no permission for this path. Body {"errors":["authz.<reason>"]} (Content-Type is text/plain).
Response fields
Field
Type
Description
currency
string
Currency code.
balance
string (decimal)
Available balance.
locked
string (decimal)
Reserved by open orders and pending withdrawals.
deposit_address
PaymentAddress | null
Coins only; null if no address has been generated yet.
Currency code, e.g. btc, usdt or a network currency such as usdt.trc20 (see GET /api/v2/peatio/public/currencies).
Responses
Status
Description
200
Account.
401
Rejected by the API gateway: missing/invalid API-key headers, nonce outside the 5 s window, bad signature, inactive key, 2FA disabled on the account, or no permission for this path. Body {"errors":["authz.<reason>"]} (Content-Type is text/plain).
404
Record not found: {"errors":["record.not_found"]}.
422
Validation error, e.g. {"errors":["public.market.doesnt_exist"]}.
Response fields
Field
Type
Description
currency
string
Currency code.
balance
string (decimal)
Available balance.
locked
string (decimal)
Reserved by open orders and pending withdrawals.
deposit_address
PaymentAddress | null
Coins only; null if no address has been generated yet.
# ex5_request(): see /docs/authentication
print(ex5_request("GET", "/api/v2/peatio/account/balances/usdt"))
// ex5Request(): see /docs/authentication
console.log(await ex5Request("GET", "/api/v2/peatio/account/balances/usdt"));
Your trading fee
GET/api/v2/peatio/account/trading_fees/meAPI key
Returns the maker/taker fee rates that apply to your account, as fractions (e.g. "0.002" = 0.2%). Omit market for the account-wide rate.
Parameters
Name
In
Type
Description
market
query
string
Market id, e.g. btcusdt; omitted returns the account-wide (any) rate.
Responses
Status
Description
200
Fee rates.
401
Rejected by the API gateway: missing/invalid API-key headers, nonce outside the 5 s window, bad signature, inactive key, 2FA disabled on the account, or no permission for this path. Body {"errors":["authz.<reason>"]} (Content-Type is text/plain).
# ex5_request(): see /docs/authentication
print(ex5_request("GET", "/api/v2/peatio/account/trading_fees/me"))
// ex5Request(): see /docs/authentication
console.log(await ex5Request("GET", "/api/v2/peatio/account/trading_fees/me"));
Your account
GET/api/v2/barong/resource/users/meAPI key
Returns your account: UID, role, level (1 = e-mail, 2 = phone, 3 = identity documents verified), whether 2FA is enabled (otp), state, labels, phones (masked) and profile data.
Responses
Status
Description
200
User.
401
Rejected by the API gateway: missing/invalid API-key headers, nonce outside the 5 s window, bad signature, inactive key, 2FA disabled on the account, or no permission for this path. Body {"errors":["authz.<reason>"]} (Content-Type is text/plain).