Get liquidated positions (admin)
curl --request GET \
--url https://api.orderly.org/v1/admin/liquidations \
--header 'orderly-account-id: <orderly-account-id>' \
--header 'orderly-key: <orderly-key>' \
--header 'orderly-signature: <orderly-signature>' \
--header 'orderly-timestamp: <orderly-timestamp>'import requests
url = "https://api.orderly.org/v1/admin/liquidations"
headers = {
"orderly-timestamp": "<orderly-timestamp>",
"orderly-account-id": "<orderly-account-id>",
"orderly-key": "<orderly-key>",
"orderly-signature": "<orderly-signature>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {
'orderly-timestamp': '<orderly-timestamp>',
'orderly-account-id': '<orderly-account-id>',
'orderly-key': '<orderly-key>',
'orderly-signature': '<orderly-signature>'
}
};
fetch('https://api.orderly.org/v1/admin/liquidations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.orderly.org/v1/admin/liquidations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"orderly-account-id: <orderly-account-id>",
"orderly-key: <orderly-key>",
"orderly-signature: <orderly-signature>",
"orderly-timestamp: <orderly-timestamp>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.orderly.org/v1/admin/liquidations"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("orderly-timestamp", "<orderly-timestamp>")
req.Header.Add("orderly-account-id", "<orderly-account-id>")
req.Header.Add("orderly-key", "<orderly-key>")
req.Header.Add("orderly-signature", "<orderly-signature>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.orderly.org/v1/admin/liquidations")
.header("orderly-timestamp", "<orderly-timestamp>")
.header("orderly-account-id", "<orderly-account-id>")
.header("orderly-key", "<orderly-key>")
.header("orderly-signature", "<orderly-signature>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.orderly.org/v1/admin/liquidations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["orderly-timestamp"] = '<orderly-timestamp>'
request["orderly-account-id"] = '<orderly-account-id>'
request["orderly-key"] = '<orderly-key>'
request["orderly-signature"] = '<orderly-signature>'
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"meta": {
"total": 9,
"records_per_page": 25,
"current_page": 1
},
"rows": [
{
"liquidation_id": 101,
"account_id": "0x114f583aea808c5812e16109b6c087660285a26f0a31dcc0f9b54f1a6a0fefbd",
"type": "liquidated",
"assigned": 1,
"margin_mode": "CROSS",
"timestamp": 1663313562090,
"transfer_amount_to_insurance_fund": 0,
"margin_ratio": 0.10436069,
"account_mmr": 0.012,
"position_notional": 28.415534,
"collateral_value": 2.965465,
"positions_by_perp": [
{
"total_position": 41.6,
"symbol": "PERP_BTC_USDC",
"position_qty": 0.00017,
"liquidator_fee": 0.006,
"cost_position_transfer": 21.002786,
"transfer_price": 123545.8,
"insurance_fund_fee": 0.006,
"abs_insurance_fund_fee": 0.126017,
"abs_liquidation_fee": 0.252034,
"mark_price": 123400
}
]
}
]
},
"timestamp": 1702989203989
}User data
Get liquidated positions (admin)
Limit: 10 requests per 1 second per IP address
GET /v1/admin/liquidations
Get liquidated positions for admin usage.
Supports two query modes:
- Per-user mode: Provide either
user_accountoruser_address.start_tandend_tare optional. - Broker mode: Omit both
user_accountanduser_address. Bothstart_tandend_tare required, the time range cannot exceed 90 days, and the broker user map cannot exceed 500,000 users.
GET
/
v1
/
admin
/
liquidations
Get liquidated positions (admin)
curl --request GET \
--url https://api.orderly.org/v1/admin/liquidations \
--header 'orderly-account-id: <orderly-account-id>' \
--header 'orderly-key: <orderly-key>' \
--header 'orderly-signature: <orderly-signature>' \
--header 'orderly-timestamp: <orderly-timestamp>'import requests
url = "https://api.orderly.org/v1/admin/liquidations"
headers = {
"orderly-timestamp": "<orderly-timestamp>",
"orderly-account-id": "<orderly-account-id>",
"orderly-key": "<orderly-key>",
"orderly-signature": "<orderly-signature>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {
'orderly-timestamp': '<orderly-timestamp>',
'orderly-account-id': '<orderly-account-id>',
'orderly-key': '<orderly-key>',
'orderly-signature': '<orderly-signature>'
}
};
fetch('https://api.orderly.org/v1/admin/liquidations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.orderly.org/v1/admin/liquidations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"orderly-account-id: <orderly-account-id>",
"orderly-key: <orderly-key>",
"orderly-signature: <orderly-signature>",
"orderly-timestamp: <orderly-timestamp>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.orderly.org/v1/admin/liquidations"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("orderly-timestamp", "<orderly-timestamp>")
req.Header.Add("orderly-account-id", "<orderly-account-id>")
req.Header.Add("orderly-key", "<orderly-key>")
req.Header.Add("orderly-signature", "<orderly-signature>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.orderly.org/v1/admin/liquidations")
.header("orderly-timestamp", "<orderly-timestamp>")
.header("orderly-account-id", "<orderly-account-id>")
.header("orderly-key", "<orderly-key>")
.header("orderly-signature", "<orderly-signature>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.orderly.org/v1/admin/liquidations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["orderly-timestamp"] = '<orderly-timestamp>'
request["orderly-account-id"] = '<orderly-account-id>'
request["orderly-key"] = '<orderly-key>'
request["orderly-signature"] = '<orderly-signature>'
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"meta": {
"total": 9,
"records_per_page": 25,
"current_page": 1
},
"rows": [
{
"liquidation_id": 101,
"account_id": "0x114f583aea808c5812e16109b6c087660285a26f0a31dcc0f9b54f1a6a0fefbd",
"type": "liquidated",
"assigned": 1,
"margin_mode": "CROSS",
"timestamp": 1663313562090,
"transfer_amount_to_insurance_fund": 0,
"margin_ratio": 0.10436069,
"account_mmr": 0.012,
"position_notional": 28.415534,
"collateral_value": 2.965465,
"positions_by_perp": [
{
"total_position": 41.6,
"symbol": "PERP_BTC_USDC",
"position_qty": 0.00017,
"liquidator_fee": 0.006,
"cost_position_transfer": 21.002786,
"transfer_price": 123545.8,
"insurance_fund_fee": 0.006,
"abs_insurance_fund_fee": 0.126017,
"abs_liquidation_fee": 0.252034,
"mark_price": 123400
}
]
}
]
},
"timestamp": 1702989203989
}