Skip to content

Методы API

Base URL: https://ocrbot.ru/api/v1/

Во всех примерах токен сокращён до YOUR_API_KEY.


Аутентификация

Каждый HTTP‑запрос обязан содержать заголовок

X-Api-Key: YOUR_API_KEY

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

Поле Тип Описание
status string "success" или "error"
code int Код ошибки/успеха. Легенда – см. Ошибки
Остальные поля зависят от конкретного метода

Содержание

  1. /tasks
  2. /tasks/{task_id}/status
  3. /tasks/{task_id}/result
  4. /account/balance
  5. /account/subscription
  6. /webhook

1. /tasks

Создать задачу

POST /tasks

Параметры

{
  "image": "<base64-строка>" | ["<base64-строка>", ...],
  "return_type": "json" | "xml"
}

Требуемые типы полей:

Поле Тип Обяз. Описание
image string | string[] Base64-файл(ы)
return_type string Формат ответа

Успешный ответ

{
  "status": "success",
  "code": 0,
  "task_id": "c4d1c7b6-89e5-48d2-bfae-01b61e2c68da"
}

Примечание: одновременно в обработке может находиться только одна задача, если отправить еще одну, пока не обработалась предыдущая, запрос вернет code 11

Получить список задач

GET /tasks

Успешный ответ

{
  "status": "success",
  "code": 0,
  "tasks": [
    {
      "task_id": "c4d1c7b6-89e5-48d2-bfae-01b61e2c68da",
      "created_at": "2025-06-05T12:44:10.418931",
      "task_status": "success" | "pending" | "error" | "failure"
    }
  ]
}

2. /tasks/{task_id}/status

GET /tasks/{task_id}/status

Успешный ответ

{
  "status": "success",
  "code": 0,
  "task_status": "success" | "pending" | "error" | "failure"
}

3. /tasks/{task_id}/result

GET /tasks/{task_id}/result

⚠️ Результат хранится 24 часа после окончания распознавания.

Успешный ответ

{
  "status": "success",
  "code": 0,
  "return_type": "json" | "xml",
  "recognition_result": {
      data
  }
}

4. /account/balance

GET /account/balance

Успешный ответ

{
  "status": "success",
  "code": 0,
  "user_pages_count": 120
}

5. /account/subscription

GET /account/subscription

Успешный ответ

{
  "status": "success",
  "code": 0,
  "subscription_type": "start_subscription",
  "allowed_pages_count_to_process_per_day": 100,
  "left_pages_count_to_process_per_day": 34,
  "allowed_pages_count_to_process_per_request": 10,
  "subscription_end_timestamp": "1751633768" // в секундах
}

либо

{
  "status": "success",
  "code": 0,
  "subscription_type": "no_subscription",
}

6. /webhook

Установить URL вебхука

POST /webhook

Параметры

{
  "webhook_url": "https://your-domain.com/webhook"
}
Требуемые типы полей:

Поле Тип Обяз. Описание
webhook_url string Формат ответа

Успешный ответ

{
  "status": "success",
  "code": 0
}

Удалить вебхук

DELETE /webhook

Успешный ответ

{
  "status": "success",
  "code": 0
}

🛡️ Используйте только HTTPS. Ваш endpoint должен отвечать HTTP 200 на тестовый пинг. Подробнее см. webhook


Примечания

  • Все даты и времена возвращаются в UTC.
  • Ограничение размера изображения: ≤ 3 МБ (если изображений несколько, суммарный размер не более 16 МБ), формат – PNG/JPEG.
  • Для всех методов существует ограничение в 3 запроса в секунду, для методов POST - 1 запрос в секунду.
  • Одновременно в обработке может находиться только одна задача, если отправить еще одну, пока не обработалась предыдущая, запрос вернет code 11