Перейти к основному содержанию

Асинхронные задания и опрос

Большинство операций записи выполняются асинхронно.

Что возвращается сразу

Эти эндпоинты принимают работу и возвращают ID, которые можно опрашивать:
  • POST /projects
  • POST /projects/{projectId}/tasks/stem-separation
  • POST /projects/{projectId}/tasks/lyrics-sync
  • POST /projects/{projectId}/exports

Что опрашивать

  • Опрашивайте GET /tasks/{taskId} для получения статуса выполнения и гидратированного вывода задачи.
  • Читайте GET /projects/{projectId} для получения долгоживущего состояния проекта.
  • Читайте GET /exports/{exportId} для получения актуальных URL загрузки экспорта.

Практическая модель опроса

  1. Запустите мутацию и сохраните возвращённые ID.
  2. Опрашивайте GET /tasks/{taskId}, пока задача не достигнет терминального состояния.
  3. Повторно считайте долговременный ресурс по ID вместо того, чтобы доверять устаревшему кэшированному состоянию.
  4. Для загрузок запрашивайте GET /exports/{exportId}, когда будете готовы использовать URL.

Почему это важно

  • Статус задачи — это временная шкала выполнения.
  • Состояние проекта — долговременный источник истины.
  • URL загрузки экспорта следует воспринимать как обновляемые, а не постоянные.