Справочник
Общая структура запроса и значения перечислений для WebSocket-методов Public API.
Структура запроса
Каждый запрос — JSON-объект с полями:
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
method | string | Да | Имя метода: assign, notify, open, open_aggregated, ping и т.д. |
exchange | number | Для assign, open, open_aggregated | Идентификатор биржи (см. ниже). |
market_type | number | Для assign, open, open_aggregated | 0 = Spot, 1 = Futures. |
symbol | string | Для assign, open, open_aggregated | Дисплей-символ без разделителей (например TRXUSDT). |
linking_type | number или string | Для assign (да); для open (нет) | Слот цвета. См. ниже и «Цвет линковки». |
title | string | Для open_aggregated (по желанию) или notify | Сводный набор: заголовок вкладки; при пустом — можно extra.title. Уведомление: заголовок. |
message | string | Для notify | Текст уведомления. |
extra | object | Нет | Доп. поля (например title у open_aggregated). |
Формат символа
Всегда передавайте дисплей-символ слитно, без разделителей. Примеры:
- Верно:
TRXUSDT - Неверно:
TRX_USDT,TRX-USDT
На разных биржах пара может отображаться как TRX/USDT или TRX-USDT; в API всегда используйте компактный вид, например TRXUSDT.
Биржа (exchange)
| Значение | Биржа |
|---|---|
| 0 | Binance |
| 1 | Bybit |
| 2 | Okx |
| 3 | Kucoin |
| 4 | Gate |
| 5 | Bitget |
| 6 | Mexc |
| 7 | Htx |
| 8 | HyperLiquid |
| 9 | Upbit |
| 10 | BingX |
| 11 | Aster |
| 12 | Lighter |
Тип рынка (market_type)
| Значение | Рынок |
|---|---|
| 0 | Spot |
| 1 | Futures |
linking_type в JSON
linking_type можно передать числом (значение enum) или строкой: десятичной строкой или именем, например Link1, Link2, None (без учёта регистра). Для assign нужен валидный цвет. Для open поле не обязательно; логика как у вотч-листа и Метод open.
Цвет линковки (linking_type)
assign: выбор, какой залинкованный инструмент обновлять. Значения 0 (None) и 1 (LinkAuto) для assign не подходят; рабочие цвета с 2 (Link1).
open (опционально): 0 = без линковки, 1 = LinkAuto (как «свободный слот» при создании набора), 2+ = конкретный цвет.
| Значение | Цвет |
|---|---|
| 2 | Кирпичный |
| 3 | Зелёный лес |
| 4 | Синий |
| 5 | Жёлтый |
| 6 | Фиолетовый |
| 7 | Багровый |
| 8 | Лаймовый |
| 9 | Тёмный циан |
| 10 | Песочный |
| 11 | Ярко-розовый |
| 12 | Шоколадный |
| 13 | Аквамарин |
| 14 | Серо-синий |
| 15 | Фуксия |
| 16 | Тёмно-синий |
| 17 | Оранжево-красный |
| 18 | Глубокий голубой |
| 19 | Золотой |
| 20 | Красно-фиолетовый |
| 21 | Тёмно-оливковый |
Ошибочные ответы
В теле ошибки всегда есть "status":"error", стабильное числовое поле error_code (значения начиная с 1000) и текст message для человека.
error_code | Типичная ситуация |
|---|---|
1000 | Тело запроса не является корректным JSON. |
1001 | После разбора JSON запрос пустой или не пригоден как объект запроса. |
1002 | Нет поля method или оно пустое. |
1003 | Не хватает обязательных полей для метода (например exchange, market_type, symbol у open). |
1004 | Значение method не поддерживается. |
1005 | Комбинация символа / биржи / типа рынка не распознана при открытии набора. |
1006 | Сводное открытие: для разрешённой пары нет списка бирж. |
1007 | Нет окна рабочего пространства для нового набора. |
1008 | Набор инструментов не удалось создать (проверьте опции графика / стакана). |
Одинаковые коды возвращаются в разных методах; на страницах методов приведены примеры JSON.