Skip to content

Get user trades#

GET https://api.pro.anboto.xyz/api/v2/trading/userTrades

Either orderIds or clientOrderIds has to be provided for matching ApiKeyAuth required.

Query params#

exchange enum required
The exchange — BINANCE, HUOBI, GATEIO, KUCOIN, OKX, BYBIT, BITGET, WOO, MEXC, BULLISH, B2C2, COINBASE_PRIME, COINBASE_INTL, HYPERLIQUID, … (15 values)
subaccount string
Sub-account
orderIds array[integer]
The list of anboto generated order ids
clientOrderIds array[string]
The list of client generated order ids

Headers#

Header
X-API-KEY string required
X-TIMESTAMP int64 ms required
X-SIGN string required
X-RECV-WINDOW int, default 5000

Responses#

200 A list of matching trades.
401 Unauthorized, Invalid Signature
429 Rate limit exceeded, retry later

Response fields — TradeDetailsList#

trades array[TradeDetails] required
The list of trade details
trades[].trade_id integer
The trade id from exchange
Example: 123456
trades[].symbol string required
The order symbol using Anboto symbology
trades[].exchangeOrderId string
The order id from exchange
trades[].clientOrderId string
The client order id
trades[].quantity number required
The absolute amount of the order quantity filled
Example: 0
trades[].price number required
The traded price
Example: 0
trades[].direction string
The direction of the trade
trades[].makerOrTaker string
The trade is from Maker or Taker
trades[].execTime integer
The time where the trade executed
trades[].fee number
The fee charged on the trade
trades[].feeCurrency string
The asset type the fee was charged in
curl -X GET "$BASE/api/v2/trading/userTrades?exchange=BINANCE" \
  -H "X-API-KEY: $API_KEY" -H "X-TIMESTAMP: $ts" \
  -H "X-SIGN: $sign"
params = {"exchange": ..., "subaccount": ..., "orderIds": ..., "clientOrderIds": ...}
r = requests.get(f"{BASE}/api/v2/trading/userTrades",
    params=params
    headers=signed_headers_query(params))
print(r.json())
let resp = client
    .get(format!("{BASE}/api/v2/trading/userTrades?exchange=BINANCE"))
    .headers(signed_headers_query(&params))
    .send()?;
println!("{}", resp.text()?);
req, _ := http.NewRequest("GET", BASE+"/api/v2/trading/userTrades?exchange=BINANCE", nil)
for k, v := range signedHeadersQuery(req.URL.Query()) {
    req.Header.Set(k, v)
}
resp, err := http.DefaultClient.Do(req)
if err != nil {
    log.Fatal(err)
}
defer resp.Body.Close()
io.Copy(os.Stdout, resp.Body)
HttpResponse<String> resp = client.send(
    signedGet("/api/v2/trading/userTrades?exchange=BINANCE"),
    HttpResponse.BodyHandlers.ofString());
const res = await fetch(`${BASE}/api/v2/trading/userTrades?exchange=BINANCE`, {
  method: "GET",
  headers: signedHeadersQuery(params),
});
const data: TradeDetailsList = await res.json();
val request = signedGet("/api/v2/trading/userTrades?exchange=BINANCE")
val response = client.send(request, HttpResponse.BodyHandlers.ofString())
println(response.body())
cpr::Response r = cpr::Get(
    cpr::Url{BASE + "/api/v2/trading/userTrades?exchange=BINANCE"},
    signedHeadersQuery(params));
std::cout << r.text << std::endl;
const res = await fetch(`${BASE}/api/v2/trading/userTrades?exchange=BINANCE`, {
  method: "GET",
  headers: signedHeadersQuery(params),
});
console.log(await res.json());

Response 200

{
  "trades": [
    {
      "trade_id": 123456,
      "symbol": "string",
      "exchangeOrderId": "string",
      "clientOrderId": "string",
      "quantity": 0,
      "price": 0,
      "direction": "string",
      "makerOrTaker": "string",
      "execTime": 0,
      "fee": 0.0,
      "feeCurrency": "string"
    }
  ]
}