Добросовестное использование
При работе с API можно заметить, что на доступные пользователю ресурсы распространяется довольно малое количество ограничений и запретов. Это сделано для того, чтобы повысить удобство работы с торговой системой.
Тем не менее, при предоставлении доступа к API мы ожидаем, что пользователи будут в своих действиях руководствоваться принципом добросовестного использования системы.
Под добросовестным использованием подразумевается взаимодействие с API системы, в рамках которого действия пользователя не угрожают работоспособности этой системы в целом и стабильности её работы для других клиентов в частности. Недобросовестным использованием в свою очередь являются любые действия, в том числе неумышленные, способные негативно влиять на работу системы.
Примеры недобросовестного использования
К недобросовестному использованию системы относятся:
- Частая (несколько раз в секунду) отправка запросов на создание Access токенов для каждого отдельного запроса к API
- Частое (несколько раз в секунду) выполнение запросов на получение больших объёмов данных
- Частое (несколько раз в секунду) выполнение дублирующих друг друга запросов однотипных запросов
- Передача системе заведомо бессмысленных данных или сообщений с некорректным синтаксисом, вызывающих ошибки в обработке полученных запросов
- Поддержка множества неиспользуемых WebSocket-соединений или поднятие и закрытие соединения для каждого отдельного запроса И другие действия, которые могут вызвать неоправданно высокое потребление ресурсов системы.
В случае обнаружения признаков недобросовестного использования Брокер оставляет за собой право временно приостановить обработку запросов от допустившего нежелательные действия пользователя до выяснения обстоятельств и устранения причин произошедшего.
Примеры добросовестного использования
Ниже представлены рекомендации по добросовестному использованию системы:
- Используйте один или несколько Access токенов для всех отправляемых запросов, обновляя их с промежутком в 15-20 минут. Срок действия Access токена составляет 30 минут, обновление раз в 20 минут позволит исключить возможность отказа в обработке запроса из-за истёкшего времени жизни токена
- Если данные имеют статический характер (список инструментов биржи, история сделок и т.д.), выполняйте обновление данных раз в несколько минут или используйте WebSocket-подписки для получения актуальных данных при их изменении
- Убедитесь в корректности передаваемой информации путём проверки разрабатываемого ПО на Тестовом контуре системы
- Ограничьте количество одновременно устанавливаемых WebSocket-соединений до разумных пределов. Мы рекомендуем использовать 1 соединение для запросов на управление заявками и до 10 соединений для управления подписками на получение информации
Что дальше?
- Ознакомьтесь с руководствами по быстрому старту для Боевого и Тестового контуров
- Изучите механизмы получения Refresh и Access токенов
- Узнайте больше о возможностях и особенностях запросов к HTTP API и WebSocket API
- При возникновении вопросов о работе с API может оказаться полезным перечень часто задаваемых вопросов и ответов