API Sora 2

Создавайте на основе API Sora 2

Создавайте текстово-видео опыты, поддерживаемые OpenAI Sora 2 и Sora Pro. Аутентифицируйтесь с помощью API ключей, опрашивайте статус задач и доставляйте финальные видео за считанные минуты.

Почему команды полагаются на API Sora 2

Обеспечьте надежные рабочие процессы генерации видео с предсказуемым опросом, 20 одновременными запросами и автоматической загрузкой в хранилище.

Sora 2 + Sora Pro

Выберите строку модели, которая соответствует вашим потребностям в качестве и стоимости: sora-2 или sora-2-pro.

Предсказуемый опрос

Создайте задачу, затем опрашивайте конечную точку проверки результата, чтобы поддерживать статус и прогресс в синхронизации без SSE.

20 одновременных запросов

Обрабатывайте до 20 задач генерации видео одновременно. Свяжитесь с нами для более высоких лимитов.

Аутентификация и базовый URL

Все конечные точки находятся под https://freesoragenerator.com/api. Укажите API ключ, созданный в консоли, через заголовок Authorization.

  • Отправьте заголовок Authorization: Bearer YOUR_API_KEY с каждым запросом.
  • Используйте Content-Type: application/json при отправке полезных нагрузок.
  • Каждый запрос на генерацию вычитает 20 кредитов (sora-2) или 30 кредитов (sora-2-pro); неудачные задания автоматически возвращаются.

Основные конечные точки

Начните с создания задачи генерации, затем опрашивайте или слушайте результат.

Создать видео Sora 2

Запустите задачу генерации Sora 2 или Sora Pro с текстово-видео или необязательными изображение-в-видео подсказками.

Метод: POSTПуть: /api/v1/video/sora-video

Параметры полезной нагрузки

  • Обязательно. Используйте "sora-2" или "sora-2-pro", чтобы нацелиться на нужный вариант модели.
  • Обязательно. Описание сцены, которую вы хотите, чтобы Sora создала.
  • Необязательно (рекомендуется). URL данных Base64 с префиксом "data:image/*;base64," для режима изображение-в-видео.
  • Необязательно. Устаревший URL референсного изображения; все еще поддерживается, но имеет более низкий приоритет, чем imageData.
  • Необязательно. Поддерживаемые значения: "9:16" (по умолчанию) или "16:9".
  • Необязательно. Отображать ли видео публично; по умолчанию true.
  • Необязательно (только VIP). Целевой PID видео для функций продолжения/ремикса.
  • Необязательно (только VIP). Массив управления персонажами; каждый элемент включает URL и временные метки.
  • Необязательно. HTTPS конечная точка, которая получает финальную полезную нагрузку, когда задача завершается успешно.

Заметки

  • Ответы возвращаются немедленно с taskId; опрашивайте check-result, пока статус не станет succeeded или failed.
  • Предоставьте webHook для получения финальной полезной нагрузки асинхронно без запуска цикла опроса.

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

curl -X POST https://freesoragenerator.com/api/v1/video/sora-video \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "sora-2-pro",
    "prompt": "A cinematic shot of a futuristic city at sunset, captured in 4K.",
    "imageData": "data:image/png;base64,iVBORw0KGgoAAA...",
    "aspectRatio": "9:16",
    "isPublic": true
  }'

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

{
  "code": 0,
  "message": "ok",
  "data": {
    "id": "task_1234567890"
  }
}

Проверить результат генерации

Опрашивайте последний статус задачи генерации, чтобы отслеживать прогресс и получать результаты.

Метод: POSTПуть: /api/video-generations/check-result

Параметры полезной нагрузки

  • Обязательно. Идентификатор, возвращенный при создании задачи генерации.

Заметки

  • Конечная точка проверяет, принадлежит ли задача вашей учетной записи, прежде чем вернуть данные.
  • Неудачные задания автоматически возвращают кредиты и раскрывают метаданные возврата в ответе.

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

curl -X POST https://freesoragenerator.com/api/video-generations/check-result \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "taskId": "task_1234567890"
  }'

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

{
  "code": 0,
  "message": "Success",
  "data": {
    "status": "running",
    "progress": 35,
    "result_url": "https://your-domain.com/storage/videos/xxx.mp4",
    "result_urls": [
      "https://your-domain.com/storage/videos/xxx.mp4"
    ],
    "failure_reason": "",
    "error_message": null,
    "credits_refunded": false,
    "refund_trans_no": null,
    "result_pid": "s_xxx",
    "result_pids": [
      "s_xxx"
    ],
    "metadata": {
      "remixTargetId": "s_prev",
      "characters": [
        {
          "url": "https://.../hero.mp4",
          "timestamps": "0,3"
        }
      ]
    }
  }
}

Получить кредиты пользователя и VIP статус

Запрос доступных кредитов текущего пользователя и статуса VIP членства.

Метод: POSTПуть: /api/get-user-credits

Заметки

  • Требуется действительная сессия входа или API токен для доступа к информации пользователя.
  • Возвращает поля left_credits, is_recharged, is_pro и is_vip статуса.

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

curl -X POST https://freesoragenerator.com/api/get-user-credits \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json"

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

{
  "code": 0,
  "message": "ok",
  "data": {
    "left_credits": 120,
    "is_recharged": true,
    "is_pro": true,
    "is_vip": false
  }
}

1. Создайте задачу

Отправьте запрос API Sora2 с вашей подсказкой и необязательным URL вебхука, затем сохраните возвращенный taskId.

2. Отслеживайте прогресс

Подпишитесь на потоковые события или вызовите конечную точку check-result, пока статус не станет succeeded или failed.

3. Доставьте видео

Используйте URL, поддерживаемые хранилищем, в result_url/result_urls, чтобы обслуживать или загружать сгенерированное видео.

Часто задаваемые вопросы

Как мне аутентифицировать свои запросы?

Создайте API ключ в консоли, затем включите его как Authorization: Bearer YOUR_API_KEY. Ключи можно вращать в любое время.

Как мне опрашивать результаты?

После вызова create сохраните taskId. Вызывайте /api/video-generations/check-result каждые 3-5 секунд, пока статус не станет succeeded или failed, затем используйте result_url/result_urls.

Как обрабатываются кредиты за неудачи?

Мы автоматически возвращаем кредиты, когда задача не удалась, и возвращаем refund_trans_no плюс credits_refunded=true в полезной нагрузке check-result для аудита.

Полезные ресурсы

Запустите с API Sora2 сегодня

Создайте свой API ключ и начните генерировать кинематографические видео на основе ИИ за считанные минуты.