Структура ответа:

Важно: внутренние коды не соответствуют HTTP кодам!

{
  "status": "ok",
"detail": {},
"status_id": 200,
"error_message": null }
где "status" - статус ответа ( ok - успешный ответ, error - возникли ошибки ),
"detail" - структура, содержащая полезные данные в случае успешного ответа (например, данные после распознавания документа)
"status_id" - цифровой код ответа сервера (не путать с кодами http-ответов)
"error_message" - сообщение ошибки

В случае обнаружения ошибки в процессе валидации аргументов запроса, базовая структура может содержать дополнительное поле "error_detail" c подробной информацией об ошибке.

Сервер использует внутренние коды ("status_id") для обозначения успешных или неуспешных запросов:
200 - 'Успешный ответ',
400 - 'Неверные параметры запроса',
500 - 'Ошибка обработки запроса',
501 - 'Сервис временно недоступен',
502 - 'Не удалось расшифровать токен',
503 - 'Договор не найден',
504 - 'Требуется токен типа "ACCESS"',
505 - 'Учетная запись пользователя отключена',
506 - 'Отсутствуют обязательные данные в поле data',
509 - 'Не удалось обновить токен',
511 - 'Доступ запрещен',
517 - 'Превышено время распознавания документа',
518 - 'Ошибка распознавания',
519 - 'Не привязана аналитика к договору',
520 - 'Превышен максимальный размер загружаемого файла',
545 - 'Недостаточно средств на балансе',