コンテンツにスキップ

Sora2で /v1/videos API を呼び出す(Python例)

Sora2 の /v1/videos エンドポイントを呼び出す(Python例)

Section titled “Sora2 の /v1/videos エンドポイントを呼び出す(Python例)”

このページの概要

Sora2 公式 /v1/videos エンドポイント(非同期タスク)

Section titled “Sora2 公式 /v1/videos エンドポイント(非同期タスク)”
import requests
# --- 1. 4All APIで取得した API Key をここに入力 ---
API_KEY = "sk-JKzyxxxxxxxxxxxxxxxxxxxxxxxxxx"
# --- 2. ここに【クリエイティブなプロンプト】を記入 ---
# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
my_prompt = "A lone protagonist standing on a skyscraper rooftop at sunset, wide shot, cinematic, 2.39:1, 24fps, anamorphic lens, film grain, teal & orange color grading, dramatic rim light, slow dolly in, slight handheld grit" # <--- クリエイティブな内容。「15s」や「縦向き」は含めないこと
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
# --- 3. ここで【技術パラメータ】を設定 ---
video_seconds = "15" # 動画の長さ (s)。あなたの "15s" に対応
# 動画サイズ/向き。 "縦向き"、"横向き"、"高画質" に対応
# "1080x1920" = 縦向き、高画質(HD Vertical)
# "1920x1080" = 横向き、高画質(HD Horizontal)
# ""(空文字列)= API に自動判定させる(デフォルト)
video_size = "" # <--- ここは "縦向き、高画質" に設定済み
# あなたの API エンドポイント
API_URL = "https://sg.4All API.com/v1/videos"
# リクエストヘッダーを準備
headers = {
'Authorization': f'Bearer {API_KEY}'
}
# 送信するフォームデータを準備
# 上記の技術パラメータをここに反映します
form_data = {
'model': (None, 'sora-2'),
'prompt': (None, my_prompt), # クリエイティブなプロンプトを使用
'seconds': (None, video_seconds), # '15' を使用
'input_reference': (None, ''),
'size': (None, video_size) # '1080x1920' を使用
}
print(f"リクエストを送信中: {API_URL}")
print(f"使用するプロンプト: {my_prompt}")
print(f"設定する長さ: {video_seconds}s")
print(f"設定するサイズ: {video_size}")
try:
# POST リクエストを送信
response = requests.post(API_URL, headers=headers, files=form_data)
# HTTP ステータスコードを確認
response.raise_for_status()
# 成功時のレスポンス内容を表示
print("リクエスト成功、レスポンス内容:")
print(response.text)
except requests.exceptions.HTTPError as http_err:
# HTTP エラーを捕捉
print(f"HTTP エラー: {http_err}")
print(f"レスポンス内容: {response.text}")
except requests.exceptions.RequestException as err:
# その他のリクエストエラーを捕捉
print(f"リクエスト中にエラーが発生しました: {err}")