Bitget APIBitget API
UTAClassic
Legacy Doc
  • Overview
  • API Documentation
  • WebSocket
  • Agent Hub
  • SDK
  • Changelog
Copied to clipboard
Account
    Assets & Balance
      Get Account AssetsgetGet Account Funding AssetsgetGet Financial RecordsgetGet Funding Financial RecordsgetGet Account Fee RategetGet Max TransferablegetGet Max WithdrawalgetSet Collateral TypepostGet Collateral TypegetGet Custom Collateral Coinsget
    Account Settings
      Get Account InfogetGet Account SettinggetPre Set LeveragegetSet LeveragepostSet Holding ModepostSwitch DeductpostGet Deduct InfogetSwitch AccountpostGet Switch StatusgetSet MarginpostGet Delta InfogetAdjust Account Modepost
    Margin & Borrow/Repay
      Get Repayable CoinsgetGet Payment CoinsgetRepaypostGet Convert Recordsget
    Trading Risk & Position Config
      Get OI LimitgetGet All Symbol Fee RatesgetGet Eligible SymbolsgetGet Eligible Margin TiergetGet Eligible Loan InfogetGet Eligible Discount Rateget
    Sub Accounts
      Create Sub-accountpostFreeze/Unfreeze Sub-accountpostGet Sub-account ListgetGet Sub-account Unified AssetsgetCreate Sub-account API KeypostModify Sub-account API KeypostDelete Sub-account API KeypostGet Sub-account API KeysgetCreate Agent Sub-accountpost
    Deposit/Withdrawal & Transfer
      Set Up Deposit AccountpostGet Deposit AddressgetGet Sub Deposit AddressgetGet Deposit RecordsgetGet Sub Deposit RecordsgetWithdrawalpostCancel WithdrawalpostGet Withdrawal RecordsgetGet Withdraw Address BookgetGet Transferable CoinsgetTransferpostMain-Sub Account TransferpostGet Main-Sub Account Transfer RecordsgetSub-Main Account Transferpost
    Small Assets Convert
      Get Small Assets HistorygetGet Small AssetsgetSmall Assets Tradepost
    Institutional Rate Limit
      Get RateLimit QuotagetSet RateLimit Quotapost
Account
Account

Account Settings

Account Settings


Get Account Info

GET
https://api.bitget.com
/api/v3/account/info

Rate limit: 5/sec/UID

Query account information, including user ID, inviter, parent account, channel, IP whitelist, permission type and permissions list.

Permission: No permission required

Get Account Info › Response Parameters

200

Successful response

code
​string
msg
​string
requestTime
​integer
​object
userId
​string

User ID

inviterId
​string

Inviter UID

parentId
​string

Parent account UID.

Only has a value when the calling account is a sub-account.

channelCode
​string

Channel invitation code

channel
​string

Channel

ips
​string

IP whitelist

permType
​string

Permission type

read-only Read only

read-and-write Read and write

permissions
​string[]

Permissions list

uta_mgt UTA management

uta_trade UTA trading

withdraw Withdrawal

copy_futures_position Futures copy trading position

copy_futures_order Futures copy trading order

regisTime
​string

Account registration time (Unix timestamp in milliseconds)

GET/api/v3/account/info
curl https://api.bitget.com/api/v3/account/info
Example Responses
{ "code": "00000", "msg": "success", "requestTime": 1744617600000, "data": { "userId": "123456789", "inviterId": "987654321", "parentId": "", "channelCode": "6258", "channel": "official", "ips": "192.168.1.1,192.168.1.2", "permType": "read-and-write", "permissions": [ "uta_mgt", "uta_trade", "withdraw", "copy_futures_position", "copy_futures_order" ], "regisTime": "1704067200000" } }
json
application/json

Get Account Setting

GET
https://api.bitget.com
/api/v3/account/settings

Rate limit: 20/sec/UID

Query account information, including the holding mode, margin mode, leverage multiple, and more.

Permission: UTA mgt. (read)

Get Account Setting › Response Parameters

200

Successful response

code
​string
msg
​string
requestTime
​integer
​object
uid
​string

UID

accountMode
​string

Account Mode

unified Unified Mode

hybrid Hybrid Mode

upgrading Unified Account Upgrading

switching Classic Account Switching

accountLevel
​string

Account level

basic Basic mode

advanced Advanced mode

isolated Isolated margin mode

delta Delta-neutral mode

assetMode
​string

Asset mode

multi_assets Multi_assets mode

holdMode
​string

Holding mode

one_way_mode/hedge_mode

stpMode
​string

STP Mode

none not setting STP

cancel_taker cancel taker order

cancel_maker cancel maker order

cancel_both cancel both of taker and maker orders

deltaSwitch
​string

Delta-neutral mode switch no Delta-neutral mode disabled yes Delta-neutral mode enabled

​object[]

Symbol configuration list

​object[]

Coin configuration list

GET/api/v3/account/settings
curl https://api.bitget.com/api/v3/account/settings
Example Responses
{ "code": "00000", "msg": "success", "requestTime": 1753787749280, "data": { "uid": "1111111111", "accountMode": "hybrid", "assetMode": "multi_assets", "accountLevel": "advanced", "holdMode": "one_way_mode", "stpMode": "none", "deltaSwitch": "no", "symbolConfigList": [ { "category": "USDT-FUTURES", "symbol": "BGBUSDT", "marginMode": "crossed", "leverage": "20" }, { "category": "USDT-FUTURES", "symbol": "BTCUSDT", "marginMode": "crossed", "leverage": "1" } ], "coinConfigList": [ { "coin": "USDT", "leverage": "6" }, { "coin": "BTC", "leverage": "3" } ] } }
json
application/json

Pre Set Leverage

GET
https://api.bitget.com
/api/v3/account/pre-set-leverage

Rate limit: 10/sec/UID

Preview the impact of adjusting the leverage of a specified symbol. This endpoint returns the estimated maximum tradable amount and required margin after the leverage change, without actually applying the change.

Permission: UTA mgt. (read)

Pre Set Leverage › Request Parameters

category
​string · required

Product type

MARGIN Margin trading

USDT-FUTURES USDT futures

COIN-FUTURES Coin-M futures

USDC-FUTURES USDC futures

marginMode
​string · required

Position mode

isolated Isolated margin

cross Cross margin

symbol
​string

Symbol name

Required when changing the leverage of a futures symbol

coin
​string

Coin name

Required when changing the leverage for margin trading

leverage
​string

Leverage multiple

Applicable to cross margin mode

Applicable to isolated margin one-way position scenario

Applicable to isolated margin two-way position scenario when the same leverage is set for both directions

longLeverage
​string

Long position leverage

Only applicable when using isolated margin with two-way position mode and different leverage for each direction

In two-way position mode, if both leverage and longLeverage are passed, longLeverage takes effect and leverage is ignored

shortLeverage
​string

Short position leverage

Only applicable when using isolated margin with two-way position mode and different leverage for each direction

In two-way position mode, if both leverage and shortLeverage are passed, shortLeverage takes effect and leverage is ignored

Pre Set Leverage › Response Parameters

200

Successful response

code
​string
msg
​string
requestTime
​integer
​object
estMaxOpen
​string

Estimated maximum tradable amount after adjustment

Returned for futures

estMaxBorrowable
​string

Estimated maximum borrowable amount after adjustment

Returned for margin trading; denominated in coin

requiredMargin
​string

Required margin, denominated in USD

marginChange
​string

Margin usage change after adjustment

A positive value means an increase, a negative value means a decrease

GET/api/v3/account/pre-set-leverage
curl 'https://api.bitget.com/api/v3/account/pre-set-leverage?category=<string>&marginMode=<string>'
Example Responses
{ "code": "00000", "msg": "success", "requestTime": 1740000000000, "data": { "estMaxOpen": "1.2345", "estMaxBorrowable": "100", "requiredMargin": "200.5", "marginChange": "10.5" } }
json
application/json

Set Leverage

POST
https://api.bitget.com
/api/v3/account/set-leverage

Rate limit: 10/sec/UID

This endpoint allows you to set leverage.

Permission: UTA mgt. (read & write)

Set Leverage › Request Parameters

category
​string · required

Product type

MARGIN Margin trading

USDT-FUTURES USDT futures

COIN-FUTURES Coin-M futures

USDC-FUTURES USDC futures

symbol
​string

Symbol name

This field is required to set leverage for futures

leverage
​string

Leverage multiple

coin
​string

Coin name

This field is required to set leverage for margin trading

posSide
​string

Position side

long/short

This field is required to set leverage for isolated margin

marginMode
​string

Margin mode

crossed Cross margin

isolated Isolated margin

Defaults to cross margin if not specified. Only futures product lines support isolated margin leverage adjustment in this update.

longLeverage
​string

Long position leverage

Only applicable when using isolated margin with two-way position mode and different leverage for each direction.

In two-way position mode, if both leverage and longLeverage are passed, longLeverage takes effect and leverage is ignored.

shortLeverage
​string

Short position leverage

Only applicable when using isolated margin with two-way position mode and different leverage for each direction.

In two-way position mode, if both leverage and shortLeverage are passed, shortLeverage takes effect and leverage is ignored.

Set Leverage › Response Parameters

200

Successful response

code
​string
msg
​string
requestTime
​integer
data
​string

Operation result

POST/api/v3/account/set-leverage
curl https://api.bitget.com/api/v3/account/set-leverage \ --request POST \ --header 'Content-Type: application/json' \ --data '{ "category": "category", "symbol": "symbol", "leverage": "leverage", "coin": "coin", "posSide": "posSide", "marginMode": "marginMode", "longLeverage": "longLeverage", "shortLeverage": "shortLeverage" }'
Example Request Body
{ "category": "category", "symbol": "symbol", "leverage": "leverage", "coin": "coin", "posSide": "posSide", "marginMode": "marginMode", "longLeverage": "longLeverage", "shortLeverage": "shortLeverage" }
json
Example Responses
{ "code": "00000", "msg": "success", "requestTime": 1728625799912, "data": "success" }
json
application/json

Set Holding Mode

POST
https://api.bitget.com
/api/v3/account/set-hold-mode

Rate limit: 10/sec/UID

This endpoint allows you to set the position holding mode between one-way and hedge mode.

Permission: UTA mgt. (read & write)

Set Holding Mode › Request Parameters

holdMode
​string · required

Holding mode

one_way_mode This mode allows holding positions in a single direction, either long or short, but not both at the same time

hedge_mode This mode allows holding both long and short positions simultaneously

Set Holding Mode › Response Parameters

200

Successful response

code
​string
msg
​string
requestTime
​integer
data
​string

Operation result

POST/api/v3/account/set-hold-mode
curl https://api.bitget.com/api/v3/account/set-hold-mode \ --request POST \ --header 'Content-Type: application/json' \ --data '{ "holdMode": "holdMode" }'
Example Request Body
{ "holdMode": "holdMode" }
json
Example Responses
{ "code": "00000", "msg": "success", "requestTime": 1728625799912, "data": "success" }
json
application/json

Switch Deduct

POST
https://api.bitget.com
/api/v3/account/switch-deduct

Rate limit: 1/sec/UID

Set BGB deduction.

Permission: UTA mgt. (read & write)

Switch Deduct › Request Parameters

deduct
​string · required

Is it enabled

on enabled

off disabled

Switch Deduct › Response Parameters

200

Successful response

code
​string
msg
​string
requestTime
​integer
data
​boolean

Operation result

POST/api/v3/account/switch-deduct
curl https://api.bitget.com/api/v3/account/switch-deduct \ --request POST \ --header 'Content-Type: application/json' \ --data '{ "deduct": "deduct" }'
Example Request Body
{ "deduct": "deduct" }
json
Example Responses
{ "code": "00000", "msg": "success", "requestTime": 1728625799912, "data": true }
json
application/json

Get Deduct Info

GET
https://api.bitget.com
/api/v3/account/deduct-info

Rate limit: 1/sec/UID

Get BGB deduction status.

Permission: UTA mgt. (read)

Get Deduct Info › Response Parameters

200

Successful response

code
​string
msg
​string
requestTime
​integer
​object
deduct
​string

Is it enabled

on enabled

off disabled

GET/api/v3/account/deduct-info
curl https://api.bitget.com/api/v3/account/deduct-info
Example Responses
{ "code": "00000", "msg": "success", "requestTime": 1746687063471, "data": { "deduct": "on" } }
json
application/json

Switch Account

POST
https://api.bitget.com
/api/v3/account/switch

Rate limit: 1/sec/UID

  1. Only supports parent accounts.
  2. This endpoint is only used for switching to classic account mode.
  3. Please note that since the account switching process takes approximately 1 minute, the successful response you receive only indicates that the request has been received, and does not mean that the account has been successfully switched to the classic account.
  4. Please use the query switching status interface to confirm whether the account switching is successful.

Switch Account › Response Parameters

200

Successful response

code
​string
msg
​string
requestTime
​integer
data
​

No response data

POST/api/v3/account/switch
curl https://api.bitget.com/api/v3/account/switch \ --request POST
Example Responses
{ "code": "00000", "msg": "success", "requestTime": 1728625799912, "data": null }
json
application/json

Get Switch Status

GET
https://api.bitget.com
/api/v3/account/switch-status

Rate limit: 5/sec/UID

Only supports parent accounts.

Get Switch Status › Response Parameters

200

Successful response

code
​string
msg
​string
requestTime
​integer
​object
status
​string

Switch Status

process Processing

success Success

fail Failed

reason
​string

Failure Reason

Only returned when the status = fail

GET/api/v3/account/switch-status
curl https://api.bitget.com/api/v3/account/switch-status
Example Responses
{ "code": "00000", "msg": "success", "requestTime": 1746687063471, "data": { "status": "fail", "reason": "upgrade_disabled" } }
json
application/json

Set Margin

POST
https://api.bitget.com
/api/v3/account/set-margin

Rate limit: 10/sec/UID

This endpoint allows you to adjust the margin for an isolated margin position.

Permission: UTA mgt. (read & write)

Set Margin › Request Parameters

category
​string · required

Product type

USDT-FUTURES USDT futures

COIN-FUTURES Coin-M futures

USDC-FUTURES USDC futures

symbol
​string · required

Symbol name

posSide
​string · required

Position side

long Long position

short Short position

operation
​string · required

Operation type

add Add margin

remove Remove margin

amount
​string · required

Margin adjustment amount, denominated in the margin currency

USDT-FUTURES: USDT; USDC-FUTURES: USDC; COIN-FUTURES: base currency

Set Margin › Response Parameters

200

Successful response

code
​string
msg
​string
requestTime
​integer
data
​string

Operation result

POST/api/v3/account/set-margin
curl https://api.bitget.com/api/v3/account/set-margin \ --request POST \ --header 'Content-Type: application/json' \ --data '{ "category": "category", "symbol": "symbol", "posSide": "posSide", "operation": "operation", "amount": "amount" }'
Example Request Body
{ "category": "category", "symbol": "symbol", "posSide": "posSide", "operation": "operation", "amount": "amount" }
json
Example Responses
{ "code": "00000", "msg": "success", "requestTime": 1728625799912, "data": "success" }
json
application/json

Get Delta Info

GET
https://api.bitget.com
/api/v3/account/delta-info

Rate limit: 20/sec/UID

Get delta-neutral mode information for the account, including the delta equity ratio and per-coin contract position ratios. This endpoint is only available when the account has the delta-neutral switch (deltaSwitch) enabled.

Permission: UTA mgt. (read)

Get Delta Info › Response Parameters

200

Successful response

code
​string
msg
​string
requestTime
​integer
​object
deltaEquityRatio
​string

(Deprecated, no longer used as a hedge-eligibility criterion) Delta equity ratio (decimal form, e.g. 0.2 represents 20%).

≤ 20%: Account is in a neutral state. If positions also meet the hedge criteria, ADL ranking for contract positions is lower, reducing the risk of auto-deleveraging.

20%: Account is not in a neutral state; contract positions follow normal ADL ranking rules.

deltaThreshold
​string

(Deprecated, no longer used as a hedge-eligibility criterion) Delta equity ratio threshold. When both deltaThreshold and positionThreshold are below their respective thresholds, the account is eligible for the ADL priority queue; otherwise it remains in the normal queue.

positionThreshold
​string

Coin net position ratio threshold.

​object[]

Coin position list.

GET/api/v3/account/delta-info
curl https://api.bitget.com/api/v3/account/delta-info
Example Responses
{ "code": "00000", "msg": "success", "requestTime": 1740000000000, "data": { "deltaEquityRatio": "0.15", "deltaThreshold": "0.2", "positionThreshold": "0.05", "list": [ { "coin": "BTC", "positionRatio": "0.03" } ] } }
json
application/json

Adjust Account Mode

POST
https://api.bitget.com
/api/v3/account/adjust-account-mode

Rate limit: 1/sec/UID

This endpoint supports the following account-mode switching scenarios. It supports switching between Basic Mode and Advanced Mode under the Unified Account:

  1. The master account switches its own mode
  2. A sub-account switches its own mode
  3. The master account switches the mode for its sub-account(s)

Adjust Account Mode › Request Parameters

mode
​string · required

Account mode

basic Basic mode

advanced Advanced mode

delta Delta-neutral mode (deprecated, use advanced mode with deltaSwitch instead)

isolated Isolated margin mode

deltaSwitch
​string

Delta-neutral switch, only effective when mode is advanced

yes Enable

no Disable

targetUid
​string

Target account UID.

If not provided, it defaults to the currently operated account.

If a sub-account UID is provided, it indicates the master account is operating on the sub-account.

Adjust Account Mode › Response Parameters

200

Successful response

code
​string
msg
​string
requestTime
​integer
data
​

No response data

POST/api/v3/account/adjust-account-mode
curl https://api.bitget.com/api/v3/account/adjust-account-mode \ --request POST \ --header 'Content-Type: application/json' \ --data '{ "mode": "mode", "deltaSwitch": "deltaSwitch", "targetUid": "targetUid" }'
Example Request Body
{ "mode": "mode", "deltaSwitch": "deltaSwitch", "targetUid": "targetUid" }
json
Example Responses
{ "code": "00000", "msg": "success", "requestTime": 1728625799912, "data": null }
json
application/json

Assets & BalanceMargin & Borrow/Repay