Broker API HubMenu

Bitget order

messageorderBitget WebSocket APIWebSocketPrivate channels

The orders of the unified trading account. Bitget says nothing is pushed on first subscribing, and that a push follows when a spot, margin or futures order is placed, filled or cancelled.

Risk warning: CFDs and spread bets are complex instruments and come with a high risk of losing money rapidly due to leverage. You can lose money on these products, and each provider publishes its own loss figure under FCA rules. You should consider whether you understand how they work and whether you can afford to take the high risk of losing your money. Automated and API trading can amplify losses through bugs, connectivity failures and runaway orders.

Independent and unofficialbitget.comchecked

This is a subscription of the Bitget WebSocket API, not an HTTP endpoint. It has no method and no path: it is sent as JSON over an open WebSocket connection.

The message

Name
order
Direction
Subscription, opened by the client and then fed by the server
Subscribed to as
order
Carried by
WebSocket. This channel is in the private section of Bitget's WebSocket documentation, so the connection has to send login first. The addresses are the ones on Bitget's quick start page (bitget.com/docs/uta/quick-start), opened the same day, which also lists VIP and low latency hosts.
Private channel
wss://ws.bitget.com/v3/ws/private
Private channel, demo trading
wss://wspap.bitget.com/v3/ws/private

Fields

The vendor's page does not say which of these fields are required or always present.

NameTypeDescription
opStringsubscribe to start the channel, unsubscribe to stop it.
argsList<Object>The channels to act on. Each entry names one.
args[].instTypeStringAlways UTA, for the unified trading account.
args[].topicStringAlways order.

What arrives

order: A message with the event subscribe and the same arg confirms the subscription, with a connId for the connection. On an error the event is error, with a code and a msg. Data then arrives as below. The page's table holds further fields, among them amount, holdMode, delegateType, marginMode, marginCoin, reduceOnly, totalProfit, cancelReason, leverage, feeDetail, stpMode and requestId.

The vendor's page does not say which of these fields are required or always present.

NameTypeDescription
argObjectThe channel the data belongs to: the instType, the topic and, on a public channel, the symbol that were subscribed to.
actionStringsnapshot, for full data.
dataList<Object>The orders.
data[].categoryStringThe business line: spot, margin, usdt-futures, coin-futures or usdc-futures.
data[].symbolStringThe symbol.
data[].orderIdStringThe id of the order.
data[].clientOidStringThe client's own id for the order.
data[].priceStringThe price of the order.
data[].qtyStringThe quantity of the order.
data[].orderTypeStringlimit or market.
data[].timeInForceStringioc, fok, gtc, post_only or rpi.
data[].sideStringbuy or sell.
data[].holdSideStringThe side of the position: long or short.
data[].tradeSideStringopen or close.
data[].orderStatusStringnew, partially_filled, filled or cancelled.
data[].cumExecQtyStringThe quantity executed so far.
data[].cumExecValueStringThe value executed so far.
data[].avgPriceStringThe average execution price. 0 where nothing has been executed.
data[].createdTimeStringWhen the order was created, as Unix time in milliseconds.
data[].updatedTimeStringWhen the order was last updated, as Unix time in milliseconds.

Sample

Written by this site from the fields recorded on this page. It has not been run against a terminal, a server or an account, and the values in it are placeholders. No credential is typed into it: where a field holds one, the placeholder says where it comes from. Nothing is entered on this site.

{
  "op": "subscribe",
  "args": [
    {
      "instType": "UTA",
      "topic": "order"
    }
  ]
}

Limits that apply at Bitget

LimitValueScopeSource
Public market data, legacy v1 API20 per 2 s per IP, public market dataPer IP address, public market data endpoints of the legacy v1 APIbitgetlimited.github.iochecked
Overall requests a minute6,000Per IP address, all requests to the common domain name, with REST and WebSocket sharing one allowancebitget.comchecked
Concurrent WebSocket connections100Per IP addressbitget.comchecked
WebSocket messages a second10Per WebSocket connection, counting ping, login, subscribe and unsubscribe messagesbitget.comchecked
WebSocket subscription requests an hour240Per WebSocket connectionbitget.comchecked
Concurrent WebSocket channel subscriptions1,000Per WebSocket connectionbitget.comchecked