Перейти до основного вмісту

Вступ

Luma — це AI відеосервіс від Ace Data Cloud, Luma Dream Machine для генерації відео. Через уніфікований API Ace Data Cloud ви можете швидко інтегрувати Luma за допомогою JavaScript для створення відео на основі тексту, зображень, продовження відео, керування початковими та кінцевими кадрами, циклічних відео тощо.

Передумови

  • Мати акаунт Ace Data Cloud та отримати API Token
  • Node.js 18+ або сучасне браузерне середовище

Базове використання

Основна кінцева точка виклику Luma API:
POST https://api.acedata.cloud/luma/videos
Повний приклад коду на JavaScript:
const response = await fetch("https://api.acedata.cloud/luma/videos", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
  "prompt": "Astronauts shuttle from space to volcano",
  "action": "generate",
  "enhancement": true
}),
});

const result = await response.json();
console.log(result);
Будь ласка, замініть YOUR_API_TOKEN на фактичний токен, отриманий на платформі Ace Data Cloud.

Обробка відповіді

Рекомендується перевіряти статус відповіді та обробляти помилки:
if (response.ok) {
  const result = await response.json();
  console.log("Виклик успішний:", result);
} else {
  console.error(`Виклик не вдався, статус: ${response.status}`);
  const error = await response.text();
  console.error(error);
}

Обгортка для Node.js

Рекомендується створити функцію для повторного використання:
async function callLuma(data) {
  const response = await fetch("https://api.acedata.cloud/luma/videos", {
    method: "POST",
    headers: {
      "Authorization": `Bearer ${process.env.ACE_API_TOKEN}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify(data),
  });
  if (!response.ok) throw new Error(`API error: ${response.status}`);
  return response.json();
}

Обробка помилок

Поширені коди помилок:
Код стануОпис
401Помилка автентифікації, перевірте API Token
403Недостатньо коштів або відсутній доступ
429Перевищено ліміт запитів
500Внутрішня помилка сервера

Наступні кроки