Перейти к основному содержанию
Основная функция Luma Tasks API заключается в том, чтобы запрашивать статус выполнения задачи, используя ID задачи, сгенерированный Luma Videos Generation API. В этом документе подробно описывается интеграция Luma Tasks API, чтобы помочь вам легко интегрировать и в полной мере использовать мощные возможности этого API. С помощью Luma Tasks API вы можете легко запрашивать статус выполнения задач Luma Videos Generation API.

Процесс подачи заявки

Чтобы использовать Luma Tasks API, сначала необходимо перейти на страницу заявки Luma Videos Generation API и подать заявку на соответствующую услугу, затем скопировать ID задачи Luma Videos Generation API, как показано на рисунке: Затем перейдите на страницу Tasks API Luma Tasks API и подайте заявку на соответствующую услугу, после перехода на страницу нажмите кнопку «Acquire», как показано на рисунке: Страница заявки Если вы еще не вошли в систему или не зарегистрированы, вы будете автоматически перенаправлены на страницу входа, где вас пригласят зарегистрироваться и войти в систему. После входа в систему вы будете автоматически возвращены на текущую страницу. При первой подаче заявки предоставляется бесплатный лимит, который позволяет бесплатно использовать этот API.

Пример запроса

Luma Tasks API можно использовать для запроса результатов Luma Videos Generation API. Для получения информации о том, как использовать Luma Videos Generation API, пожалуйста, обратитесь к документации Luma Videos Generation API. Мы возьмем один из ID задач, возвращенных службой Luma Videos Generation API, в качестве примера, чтобы продемонстрировать, как использовать этот API. Предположим, у нас есть ID задачи: 50fc6182-fa86-4c7d-ac12-2fa27ec2f151, далее мы покажем, как передать этот ID задачи.

Пример задачи

Установка заголовков запроса и тела запроса

Request Headers включает:
  • accept: указывает на прием ответа в формате JSON, здесь указывается application/json.
  • authorization: ключ для вызова API, после подачи заявки его можно выбрать из выпадающего списка.
Request Body включает:
  • id: загруженный ID задачи.
  • action: способ выполнения операции над задачей.
Настройка, как показано на рисунке:

Пример кода

Можно заметить, что на правой стороне страницы автоматически сгенерирован код на различных языках, как показано на рисунке:

Некоторые примеры кода:

CURL

curl -X POST 'https://api.acedata.cloud/luma/tasks' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
  "id": "50fc6182-fa86-4c7d-ac12-2fa27ec2f151",
  "action": "retrieve"
}'

Python

import requests

url = "https://api.acedata.cloud/luma/tasks"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "id": "50fc6182-fa86-4c7d-ac12-2fa27ec2f151",
    "action": "retrieve"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)

Пример ответа

После успешного запроса API вернет информацию о деталях видео задачи. Например:
{
  "_id": "66d297a3550a4144a5a5db42",
  "id": "50fc6182-fa86-4c7d-ac12-2fa27ec2f151",
  "api_id": "94fc9028-5a9f-4875-aae4-38463bd30ac5",
  "application_id": "06484a45-9d04-498a-98a7-67086dee8166",
  "created_at": 1725077411.961,
  "credential_id": "e6a879e5-a7c0-4f7b-9d6f-f9a837421a50",
  "request": {
    "action": "generate",
    "prompt": "Астронавты перемещаются из космоса к вулкану"
  },
  "trace_id": "0b7c1c1a-045c-4145-a434-609cba88f0a9",
  "user_id": "ad7afe47-cea9-4cda-980f-2ad8810e51cf",
  "response": {
    "success": true,
    "task_id": "50fc6182-fa86-4c7d-ac12-2fa27ec2f151",
    "video_id": "4b088fc8-2bbc-4706-80a6-a0fb118adc1a",
    "prompt": "Астронавты перемещаются из космоса к вулкану",
    "video_url": "https://platform.cdn.acedata.cloud/luma/50fc6182-fa86-4c7d-ac12-2fa27ec2f151.mp4",
    "video_height": 752,
    "video_width": 1360,
    "state": "completed",
    "thumbnail_url": "https://platform.cdn.acedata.cloud/luma/50fc6182-fa86-4c7d-ac12-2fa27ec2f151.jpg",
    "thumbnail_width": 1360,
    "thumbnail_height": 752
  },
  "finished_at": 1725077566.241
}
Возвращаемый результат содержит несколько полей, поле request — это тело запроса, отправленного для создания задачи, в то время как поле response — это тело ответа, возвращенное после завершения задачи, результаты которого совпадают с запросом и ответом Luma Videos Generation API. Описание полей следующее.
  • id: ID, сгенерированного для этой видео задачи, используется для уникальной идентификации этой задачи по созданию видео.
  • video_id: уникальный идентификатор видео в данной задаче, который необходимо передать при следующем расширении операции над видео.
  • request: информация о запросе в задаче видео.
  • response: информация о возвращенном ответе в задаче видео.

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

Это запрос для получения деталей видео задач по нескольким ID задач, в отличие от вышеуказанного, необходимо выбрать action как retrieve_batch. Request Body включает:
  • ids: массив загруженных ID задач.
  • action: способ выполнения операции над задачей.
Настройка, как показано на рисунке:

Пример кода

Можно заметить, что на правой стороне страницы автоматически сгенерирован код на различных языках, как показано на рисунке:

Некоторые примеры кода:

Пример ответа

После успешного запроса API вернет конкретную информацию о всех пакетных видео задачах. Например:
{
  "items": [
    {
      "_id": "66d297a3550a4144a5a5db42",
      "id": "50fc6182-fa86-4c7d-ac12-2fa27ec2f151",
      "api_id": "94fc9028-5a9f-4875-aae4-38463bd30ac5",
      "application_id": "06484a45-9d04-498a-98a7-67086dee8166",
      "created_at": 1725077411.961,
      "credential_id": "e6a879e5-a7c0-4f7b-9d6f-f9a837421a50",
      "request": {
        "action": "generate",
        "prompt": "Астронавты перемещаются из космоса к вулкану"
      },
      "trace_id": "0b7c1c1a-045c-4145-a434-609cba88f0a9",
      "user_id": "ad7afe47-cea9-4cda-980f-2ad8810e51cf",
      "response": {
        "success": true,
        "task_id": "50fc6182-fa86-4c7d-ac12-2fa27ec2f151",
        "video_id": "4b088fc8-2bbc-4706-80a6-a0fb118adc1a",
        "prompt": "Астронавты перемещаются из космоса к вулкану",
        "video_url": "https://platform.cdn.acedata.cloud/luma/50fc6182-fa86-4c7d-ac12-2fa27ec2f151.mp4",
        "video_height": 752,
        "video_width": 1360,
        "state": "completed",
        "thumbnail_url": "https://platform.cdn.acedata.cloud/luma/50fc6182-fa86-4c7d-ac12-2fa27ec2f151.jpg",
        "thumbnail_width": 1360,
        "thumbnail_height": 752
      },
      "finished_at": 1725077566.241
    },
    {
      "_id": "66d29ed3550a4144a5a6c089",
      "id": "76a05f61-68ad-4c1a-838f-a00cd08cf65b",
      "api_id": "94fc9028-5a9f-4875-aae4-38463bd30ac5",
      "application_id": "06484a45-9d04-498a-98a7-67086dee8166",
      "created_at": 1725079250.921,
      "credential_id": "e6a879e5-a7c0-4f7b-9d6f-f9a837421a50",
      "request": {
        "action": "generate",
        "prompt": "ла ла ла"
      },
      "trace_id": "338f1616-741d-40b6-8d62-c025434024c6",
      "user_id": "ad7afe47-cea9-4cda-980f-2ad8810e51cf",
      "response": {
        "success": true,
        "task_id": "76a05f61-68ad-4c1a-838f-a00cd08cf65b",
        "video_id": "5a638d6a-7481-4c5e-8843-36c9d1b5bcd5",
        "prompt": "ла ла ла",
        "video_url": "https://platform.cdn.acedata.cloud/luma/76a05f61-68ad-4c1a-838f-a00cd08cf65b.mp4",
        "video_height": 752,
        "video_width": 1360,
        "state": "completed",
        "thumbnail_url": "https://platform.cdn.acedata.cloud/luma/76a05f61-68ad-4c1a-838f-a00cd08cf65b.jpg",
        "thumbnail_width": 1360,
        "thumbnail_height": 752
      },
      "finished_at": 1725079406.71
    }
  ],
  "count": 2
}

CURL

curl -X POST 'https://api.acedata.cloud/luma/tasks' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
  "ids": ["50fc6182-fa86-4c7d-ac12-2fa27ec2f151","76a05f61-68ad-4c1a-838f-a00cd08cf65b"],
  "action": "retrieve_batch"
}'

Python

import requests

url = "https://api.acedata.cloud/luma/tasks"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "ids": ["50fc6182-fa86-4c7d-ac12-2fa27ec2f151","76a05f61-68ad-4c1a-838f-a00cd08cf65b"],
    "action": "retrieve_batch"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)

Ошибка обработки

При вызове API, если возникнет ошибка, API вернет соответствующий код ошибки и информацию. Например:
  • 400 token_mismatched:Неверный запрос, возможно, из-за отсутствия или недействительных параметров.
  • 400 api_not_implemented:Неверный запрос, возможно, из-за отсутствия или недействительных параметров.
  • 401 invalid_token:Неавторизован, недействительный или отсутствующий токен авторизации.
  • 429 too_many_requests:Слишком много запросов, вы превысили лимит частоты.
  • 500 api_error:Внутренняя ошибка сервера, что-то пошло не так на сервере.

Пример ответа об ошибке

{
  "success": false,
  "error": {
    "code": "api_error",
    "message": "не удалось получить"
  },
  "trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89"
}

Заключение

С помощью этого документа вы узнали, как использовать Luma Tasks API для запроса всех конкретных деталей о единичных или пакетных видео задачах. Надеемся, что этот документ поможет вам лучше интегрировать и использовать этот API. Если у вас есть какие-либо вопросы, пожалуйста, не стесняйтесь обращаться в нашу техническую поддержку.