- Всё API работает по протоколу HTTPS.
- Авторизация осуществляется по протоколу OAuth 2.0 или персональному токену.
- Все данные доступны только в формате JSON.
- Базовый URL —
https://api.huntflow.ru/
- Даты форматируются в соответствии с
ISO 8601:
YYYY-MM-DDThh:mm:ss±hh:mm
.
В запросе необходимо передавать заголовок User-Agent
, в противном случае
ответом будет 400 Bad Request
. Указание в заголовке названия приложения и
контактной почты разработчика позволит нам оперативно с вами связаться в случае
необходимости.
User-Agent: App/1.0 ([email protected])
Для каждого токена установлен лимит в 10 запросов в секунду (лимит может не действовать при on-premise размещении и размещении на выделенных серверах).
При превышении лимита будет возвращен ответ 429 Too Many Requests
.
Данные, передающиеся в теле запроса, должны удовлетворять требованиям:
- Валидный JSON (допускается передача как минифицированного варианта, так и pretty print варианта с дополнительными пробелами и сбросами строк).
- Рекомендуется использование кодировки UTF-8 без дополнительного экранирования
(
{"name": "Иванов Иван"}
). - Также возможно использовать ascii кодировку с экранированием
(
{"name": "\u0418\u0432\u0430\u043d\u043e\u0432 \u0418\u0432\u0430\u043d"}
). - К типам данных в определённым полях накладываются дополнительные условия,
описанные в каждом конкретном методе. В JSON типами данных являются
string
,number
,boolean
,null
,object
,array
.
API широко использует информирование при помощи кодов ответов. Приложение должно корректно их обрабатывать.
В случае неполадок и сбоев, возможны ответы с кодом 503
и 500
.
При каждой ошибке, помимо кода ответа, в теле ответа может быть выдана дополнительная информация, позволяющая разработчику понять причину соответствующего ответа.
Более подробно про возможные ошибки.
К запросам, подразумевающим выдачу списка объектов, можно в параметрах
указать page=N&count=M
. Нумерация идёт с единицы, по умолчанию выдаётся
первая страница с 30 объектами на странице. Во всех ответах, где
доступен постраничный вывод, единообразный корневой объект:
{
"page": 1,
"count": 1,
"total": 1,
"items": [{}]
}