Skip to main content
POST https://api.acedata.cloud/webextrator/tasks WebExtrator Задача Запрос API используется для запроса исторических результатов render / extract задач. Общие применения:
  • Проверка полного envelope после завершения асинхронной задачи (кроме callback_url уведомлений или активного опроса).
  • Аудит того, что было отправлено — записи задач одновременно хранят оригинальный request и окончательный response.
  • Пакетное заполнение — получение нескольких записей по id или trace_id за один раз.
Записи задач хранятся в Redis 7 дней. Интерфейс запроса задач бесплатный (не учитывается в использовании Credits).

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

Можно запросить только задачи, принадлежащие вашему аккаунту AceDataCloud.

Параметры запроса

Тело запроса разделяется по action на два действия:

action: "retrieve" — Запрос одной записи

id и trace_id передаются один из двух.

action: "retrieve_batch" — Пакетный запрос

ids и trace_ids передаются один из двух.

Ответ на одиночный запрос

Если ничего не найдено, возвращается { "task": null } (HTTP 200, не 404). Поля времени объекта task описаны ниже.
  • created_at — время создания задачи, Unix временная метка (секунды, с плавающей точкой).
  • started_at — время начала выполнения задачи, Unix временная метка (секунды, с плавающей точкой). Если задача еще не началась, то null.
  • finished_at — время завершения задачи, Unix временная метка (секунды, с плавающей точкой). Если задача не завершена, то null.
  • elapsed — время выполнения задачи, в секундах (с плавающей точкой, с 3 знаками после запятой). Если задача не завершена, то null.

Ответ на пакетный запрос

Несуществующие ID не вызовут ошибку, просто будут отсутствовать в tasks.

Примеры

Запрос одной записи по task_id

Запрос одной записи по trace_id

Пакетный запрос

Python (requests) — Опрос до завершения

Node.js (fetch) — Получение полного envelope после получения уведомления

Ошибки в ответе

Подсказки и ловушки

  • Можете настроить trace_id, если это необходимо. В оригинальном запросе render/extract загрузите ?trace_id=… (QueryString), сопоставьте его с вашим собственным бизнес ID (например, ID выполнения рабочего процесса и т.д.), после этого вы сможете использовать бизнес ID для поиска задач. Если не передан, сервер автоматически сгенерирует UUID.
  • Срок хранения 7 дней. Более ранние задачи возвращают task: null — для долгосрочного архивирования, пожалуйста, сохраняйте данные самостоятельно.
  • Запросы задач бесплатны. Запрашивайте столько раз, сколько хотите, плата за оригинальные вызовы render/extract уже была оплачена.
  • Предпочитайте асинхронный подход + обратные вызовы, а не опрос. Если бизнес позволяет, передайте callback_url в оригинальном запросе, чтобы платформа могла отправить вам envelope, это будет более эффективно, чем опрашивать каждые 2 секунды.