> ## Documentation Index
> Fetch the complete documentation index at: https://docs.toapis.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Статус музыкальной задачи

> Запрос статуса и результата задачи Suno

* Опрос статуса и результатов асинхронных музыкальных задач
* Отслеживание прогресса в реальном времени
* По завершении — аудио, обложки, видео URL(зеркалятся на CDN)
* При сбое средства возвращаются автоматически

Все музыкальные задачи асинхронны. После отправки опрашивайте этот endpoint.

## Authorizations

<ParamField header="Authorization" type="string" required>
  Bearer Token. API Key:[страница управления](https://toapis.com/console/token)
</ParamField>

## Path Parameters

<ParamField path="task_id" type="string" required>
  ID задачи из API генерации(префикс `tsk_aud_`)
</ParamField>

## Response

<ResponseField name="id" type="string">ID задачи</ResponseField>
<ResponseField name="status" type="string">`submitted` / `queued` / `in_progress` / `completed` / `failed`</ResponseField>
<ResponseField name="progress" type="integer">Прогресс 0-100</ResponseField>
<ResponseField name="cost" type="number">Фактическая стоимость upstream(USD)</ResponseField>
<ResponseField name="created" type="integer">Создано(Unix)</ResponseField>
<ResponseField name="completed" type="integer">Завершено(Unix)</ResponseField>

<ResponseField name="result" type="object">
  Результат задачи; структура зависит от операции:

  <Expandable title="структура result">
    <ResponseField name="music" type="array">Треки с `audio_url`, `image_url`, `title`, `tags`, `lyrics`, `duration`</ResponseField>
    <ResponseField name="instruments" type="array">`midi`: по дорожкам `name`/`program`/`is_drum`/`notes[]`</ResponseField>
    <ResponseField name="files" type="array">`download`: URL файлов разных форматов</ResponseField>
    <ResponseField name="videoUrl" type="string">`generateMp4`: URL видео</ResponseField>
    <ResponseField name="avg_bpm" type="number">`bpm`: средний BPM(также `max_bpm`/`min_bpm`)</ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="error" type="object">Информация об ошибке(`code`/`message`)</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl --request GET \
    --url https://toapis.com/v1/music/tasks/tsk_aud_01M3EXAMPLE \
    --header 'Authorization: Bearer <token>'
  ```

  ```python Python theme={null}
  import time
  import requests

  task_id = "tsk_aud_01M3EXAMPLE"
  while True:
      resp = requests.get(
          f"https://toapis.com/v1/music/tasks/{task_id}",
          headers={"Authorization": "Bearer <token>"}
      ).json()["data"]
      if resp["status"] in ("completed", "failed"):
          break
      time.sleep(5)
  print(resp["result"])
  ```
</RequestExample>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.