Перейти к содержимому
HTTP APIНастройки

Изменить настройки

Собрать запрос

Меняйте значения — команда меняется следом. Токен здесь не вводится: команда берёт его из переменной окружения SPECTRE_LOCAL_API_TOKEN. Запускайте её в своей командной строке.

Команда
curl -X PATCH 'http://127.0.0.1:48180/v1/settings' \
  -H "Authorization: Bearer $SPECTRE_LOCAL_API_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{
  "changes": [
    {
      "category": "multiview",
      "key": "stack_width_px",
      "value": 300
    },
    {
      "instrument": "binance:futures:XRPUSDT",
      "connection_id": 25,
      "category": "trading",
      "key": "slippage",
      "value": {
        "value": "0.1",
        "type": "percent"
      }
    },
    {
      "scope": "order_book",
      "connection_id": 25,
      "category": "general",
      "key": "auto_scroll",
      "value": true
    },
    {
      "category": "appearance",
      "key": "theme",
      "value": {
        "stack": "dark"
      }
    },
    {
      "category": "hotkeys_orderbook",
      "key": "close_position",
      "value": {
        "code": "KeyX",
        "modifiers": []
      }
    }
  ]
}'
PATCH
/settings

До 100 изменений в запросе. Сначала проверяются все, затем они применяются по порядку. Если изменение не применилось, список на нём останавливается, а ответ называет его номер: changes[2]: …. Уже применённые изменения не откатываются.

Изменение адресуется так:

  • scope по умолчанию равен global. С instrument область всегда order_book.
  • instrument адресует строку пары. connection_id тогда выбирается по общему правилу.
  • Для order_book без instrument поле connection_id адресует умолчание этого подключения. Без него изменение идёт в глобальное умолчание.
  • connection_id не принимается для global.

Некоторые ключи обрабатываются по-своему. appearance/theme принимает объект с любым набором из stack, graphic и interface. Каждое значение — имя темы, а graphic и interface принимают только light и dark. hotkeys_* принимают { "code", "modifiers" } или null. Сочетание, занятое другим действием, отклоняется. appearance/font_family и localization/current_language тоже обрабатываются по-своему.

Лимит — 5 запросов в секунду на всех клиентов вместе.

Авторизация

bearerToken settings:write
headerАвторизацияBearer <token>

Токен Local API: spt_ и 64 шестнадцатеричных символа. Скопируйте его в Settings App → Общие → Local API. Он принимается только в заголовке Authorization. Имена, перечисленные у операции, — это права, которые ей нужны. У токена терминала есть все.

Право: settings:write

Тело запроса

application/json
  1. body
changes*array<>
Элементы1 <= items <= 100

Тело ответа

Сколько изменений применено.

application/json
  1. response
applied*integer

Число применённых изменений.

Пример запроса
curl -X PATCH 'http://127.0.0.1:48180/v1/settings' \  -H "Authorization: Bearer $SPECTRE_LOCAL_API_TOKEN" \  -H 'Content-Type: application/json' \  -d '{  "changes": [    {      "category": "multiview",      "key": "stack_width_px",      "value": 300    },    {      "instrument": "binance:futures:XRPUSDT",      "connection_id": 25,      "category": "trading",      "key": "slippage",      "value": {        "value": "0.1",        "type": "percent"      }    },    {      "scope": "order_book",      "connection_id": 25,      "category": "general",      "key": "auto_scroll",      "value": true    },    {      "category": "appearance",      "key": "theme",      "value": {        "stack": "dark"      }    },    {      "category": "hotkeys_orderbook",      "key": "close_position",      "value": {        "code": "KeyX",        "modifiers": []      }    }  ]}'
Пример ответа
{  "applied": 5}