xRocket Exchange REST API
API xRocket Exchange позволяет разработчикам интегрировать функции биржи xRocket в свои проекты, чтобы иметь возможность создавать, выполнять или отменять ордера, получать рыночные данные, отслеживать динамику цен торговых пар и т. д.
- Кошелек xRocket имеет два типа баланса: Основной (Funding) и Торговый (Trading).
Эта версия API предназначена для обеспечения взаимодействия двух балансов.
Уведомление о старой версии API v1
Версия Trade API v1 (https://trade.xrocket.tg/api) устарела, больше не поддерживается и скоро будет удалена. Пожалуйста перенесите свои интеграции на современную версию Exchange API.
Авторизация
-
Получите свой Bearer token (API-ключ), чтобы использовать любые методы которые требуют авторизации. В главном меню Telegram бота перейдите в Настройки ➡ Настройки биржи ➡ API токен.
-
Добавьте Bearer token в запрос при использовании методов требующих авторизации следующим образом:
"Authorization: Bearer SpjEQPuvEGMae7QLaNzR8I47D3qzUP"
Для работы с тестовой интеграцией, запросите Bearer token в тестнет-боте.
Сущности
xRocket Exchange API подразумевает взаимодействие следующих сущностей:
account // аккаунт пользователя xRocket
balance // баланс может быть основной или торговый и принадлежит аккаунту пользователя xRocket
symbol // торговая пара, например BTC-USDT
order // торговый ордер на покупку/продажу ассета на заданных пользователем условиях
trade // исполнения ордеров на бирже
ticker // рыночные данные торговой пары за указанный интервал времени
candle // агрегированные торговые данные для указанной пары и временного интервала
orderbook // общие суммы спроса/предложения торговой пары с указанной глубиной и точностью
transfer // перемещение актива внутри учетной записи, между основным и торговым балансом
Пример запроса/ответа
В этом примере метод GET /api/v1/orders/history используется для запроса истории закрытых и отмененных торговых ордеров BTC-USDT за указанный интервал времени. Метод запрашивает данные, связанные с учетной записью xRocket. Для таких запросов требуется токен авторизации, который может быть выдан учетной записи пользователя.
curl -X 'GET' \
'https://exchange.api.xrocket.tg/api/v1/orders/history?symbol=BTC-USDT&side=buy&startAt=2024-12-24T14%3A49%3A13.543Z&endAt=2024-12-24T14%3A49%3A13.543Z¤tPage=1&pageSize=20&hideCanceled=false' \
-H 'accept: application/json' \
-H 'Authorization: Bearer 10Q9DG5BG0ReG3jCdyEQ6C5yQkhHRX'
Запрос отправляется на URL-адрес метода API: /api/v1/orders/history.
| Пример поля запроса и значения | Описание |
|---|---|
symbol=BTC-USDT | BTC-USDT задана как торговая пара (символ). |
side=buy | Запрашиваются только ордера на покупку. В этом поле можно установить значение buy или sell. Не используйте это поле для получения всех ордеров (на покупку и продажу). |
startAt=2024-12-24T1:49:13.543Z | В этом поле указывается начальная временная метка запрошенной истории. |
endAt=2024-12-24T14:49:13.543Z | В этом поле указывается конечная временная метка запрошенной истории.. |
currentPage=1 | В этом поле указывается страница, которая будет отображаться в ответе. Ответ может состоять из нескольких страниц. |
pageSize=20 | В этом поле указывается количество торговых записей на странице возвращаемого ответа. |
hideCanceled=false | В этом поле указывается, включены ли в ответ отмененные заказы. |
'Authorization: Bearer 10Q9DG5BG0ReG3jCdyEQ6C5yQkhHRX' | Метод GET /api/v1/orders/history запрашивает данные, связанные с учетной записью xRocket. Для таких запросов требуется токен авторизации, который может быть выдан учетной записи пользователя ботом xRocket. |
Пример ответа:
{
"orders": [
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"clientOrderId": "string",
"symbol": "BTC-USDT",
"side": "buy",
"status": "working",
"createdAt": "2024-12-05T12:51:20.917Z",
"updatedAt": "2024-12-05T12:51:20.917Z",
"dealSize": "19.781",
"dealFunds": "19.781",
"fee": "1.82",
"feeAsset": "USDT",
"remark": "string",
"timeInForce": "GTC",
"type": "stopMarket",
"size": "109.34",
"stopTriggered": false,
"stopPrice": "300.5"
}
],
"currentPage": 1,
"pageSize": 20,
"totalNum": 1,
"totalPage": 1
}
| Пример поля ответа и значения | Описание |
|---|---|
| "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6" | ID ордера. |
| "clientOrderId": "string" | Уникальный идентификатор, созданный клиентом. |
| "symbol": "BTC-USDT" | Торговая пара. |
| "side": "buy" | Ордер на покупку или продажу [ buy, sell ]. |
| "status": "working" | Статус ордера [ working, rejected, cancelled, completed, expired, pending, sending ]. |
| "createdAt": "2024-12-05T12:51:20.917Z" | Временная метка создания заказа. |
| "updatedAt": "2024-12-05T12:51:20.917Z" | Временная метка обновления ордера. |
| "dealSize": "19.781" | Исполненная сумма в базовом активе (BTC). |
| "dealFunds": "19.781" | Исполненный размер средств в котируемом активе (USDT). |
| "fee": "1.82" | Сумма комиссии. |
| "feeAsset": "USDT" | Актив для оплаты комиссии. |
| "timeInForce": "GTC" | Параметр "Time in force" [ GTC, IOC, FOK ]. GTC (Good 'Til Canceled), IOC (Immediate or Cancel), and FOK (Fill or Kill). |
| "type": "stopMarket" | Тип ордера [limit, market, stopLimit, stopMarket]. |
| "size": "109.34" | Сумма ордера. |
| "stopTriggered": false | Указывает, сработал стоп-ордер или нет. |
| "stopPrice": "300.5" | Указывает стоп-цену. |
| "currentPage": 1 | Текущая страница. |
| "pageSize": 20 | Максимальное количество записей на странице. |
| "totalNum": 1 | Общее количество возвращенных записей. |
| "totalPage": 1 | Общее количество возвращенных страниц. |
Методы
Найдите подходящую конечную точку для своего приложения в следующем списке всех доступных методов API xRocket Exchange с краткими описаниями, сгруппированными по категориям для упрощения навигации.
| Метод | Описание |
|---|---|
| Данные рынка | Методы для запроса общедоступных данных биржевого рынка. |
| Get symbol | Запросить данные указанной торговой пары. |
| Get symbols | Запросить список всех доступных на данный момент торговых пар. |
| Get ticker | Запросить рыночные данные торговой пары за указанный интервал времени. |
| Get candles | Запросить текущие данные рыночных свечей для указанной торговой пары. |
| Get orderbook | Запросить текущие данные книги ордеров для указанной торговой пары. |
| Get trades | Запрос информации о выполненных ордерах для указанной торговой пары. |
| Get assets | Запросить список всех доступных активов. |
| Get asset | Запросить информацию об указанном активе. |
| Курсы | Методы для запроса публичных данных обменных курсов. |
| Get rates | Запросить текущие курсы определенных криптовалют в указанном фиатном активе. |
| Ордеры | Методы для запроса деталей ордеров и управления ордерами указанного аккаунта. |
| Get orders history | Запросить историю ордеров. Требуется авторизация |
| Get active orders | Запросить список активных ордеров. Требуется авторизация |
| Get order | Запрос деталей ордера по идентификатору. Требуется авторизация |
| Delete order | Отменить торговый ордер по идентификатору. Требуется авторизация |
| Place order | Разместить торговый ордер. Требуется авторизация |
| Get order estimation | Запросить оценку заказа. Требуется авторизация |
| Аккаунт | Методы для запроса запроса данных аккаунта. |
| Get account trading balances | Запросить текущий торговый баланс. Требуется авторизация |
| Get exchange fees | Запросить текущие биржевые комиссии для указанной торговой пары. |
| Основной баланс | Методы для управления основным балансом и выводами средств. |
| Create withdrawal | Создать вывод. Требуется авторизация |
| Get account funding balances | Запросить текущий основной баланс. Требуется авторизация |
| Get withdrawal by ID | Запросить детали вывода по идентификатору. Требуется авторизация |
| Get withdrawals history | Запросить историю вывода средств. Требуется авторизация |
| Get withdrawal quotas | Запросить подробную информацию о квотах на вывод. |
| Переводы | Методы управления переводами активов между основным/торговыми балансами в пределах учетной записи xRocket. |
| Transfer | Перенос активов между основным/торговыми балансами в учетной записи xRocket. Требуется авторизация |
| Get transfers history | Запросить историю переводов по указанному направлению и сроку. Требуется авторизация |
| Get transfer by transfer ID | Запросить детали указанного перевода по идентификатору. Требуется авторизация |