Skip to content

openai sora video Model

  • 2025.10.02 This site now supports the openai sora v2 video model
  • Standard video format
  • Supports dalle format /v1/images/generations and reference image /v1/images/edits
  • Supports chat format
  • Sample video generated from a dog image: sample video
  • Pricing: sora-2 2000 credits/request, sora-2-pro 30000 credits/request

Online Testing

Online Testing

    1. Visit https://video.ddaiai.com (if blocked, try a different subdomain prefix like suibian)
    1. If it is blocked, you can change the address yourself: https://suibian.ddaiai.com — replace suibian with something else, e.g. https://2025.ddaiai.com, all work

Settings

google-veo

Result

sora-2

API

  • All requests must include Authorization: Bearer hk-your-key in the header

1. Standard Video Format

  • The standard format is a two-step process
  • Submit a task to get a task_id
  • Use the task_id to query the task status

1.1 Submit Task

shell
curl --request POST \
  --url https://api.openai-hk.com/sora/v1/video/create \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'Connection: keep-alive' \
  --header 'Content-Type: application/json' \
  --data '{
    "images": [
        "https://www.open-hk.com/res/img/open.png"
    ],
    "model": "sora-2-pro",
    "orientation": "landscape",
    "size": "large",
    "duration": 15,
    "prompt": "飞盘在公园飞行"
}'
curl --request POST \
  --url https://api.openai-hk.com/sora/v1/video/create \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'Connection: keep-alive' \
  --header 'Content-Type: application/json' \
  --data '{
    "images": [
        "https://www.open-hk.com/res/img/open.png"
    ],
    "model": "sora-2-pro",
    "orientation": "landscape",
    "size": "large",
    "duration": 15,
    "prompt": "飞盘在公园飞行"
}'
  • sora-2-pro supports the duration and size parameters

  • sora-2 defaults to non-HD with a 10s duration

  • Request body field descriptions

    FieldTypeDescription
    promptstringPrompt for video generation
    modelstringModel name: sora-2 sora-2-pro
    durationint10 15; pro also supports 25
    imagesstring[]List of images for video generation, URL or base64
    orientationstringlandscape horizontal, portrait vertical
    sizestringlarge HD, small standard — pro only
    character_urlstringVideo URL for character creation; the video must not contain real people, otherwise it will fail
    character_timestampsstringTime range (in seconds) when the character appears, format {start},{end}, end-start must be 1~3 seconds
  • Example with character

json
{
  "images": [],
  "model": "sora-2-pro",
  "orientation": "portrait",
  "prompt": "make animate",
  "duration": 15,
  "character_url": "https://filesystem.site/cdn/20251030/javYrU4etHVFDqg8by7mViTWHlMOZy.mp4",
  "character_timestamps": "1,3"
}
{
  "images": [],
  "model": "sora-2-pro",
  "orientation": "portrait",
  "prompt": "make animate",
  "duration": 15,
  "character_url": "https://filesystem.site/cdn/20251030/javYrU4etHVFDqg8by7mViTWHlMOZy.mp4",
  "character_timestamps": "1,3"
}
  • Response body
json
{
  "id": "asdsdssdsdhao",
  "status": "pending"
}
{
  "id": "asdsdssdsdhao",
  "status": "pending"
}
  • Field descriptions
FieldTypeDescription
idstringTask ID
statusstringTask status: completed failed pending video_generating running
video_urlstringVideo URL

1.2 Query Task Status

get https://api.openai-hk.com/sora/v1/video/feed/{id}

shell
curl --request GET \
  --url https://api.openai-hk.com/sora/v1/video/feed/asdsdssdsdhao \
  --header 'Authorization: Bearer hk-your-hk-key' \
  --header 'Content-Type: application/json'
curl --request GET \
  --url https://api.openai-hk.com/sora/v1/video/feed/asdsdssdsdhao \
  --header 'Authorization: Bearer hk-your-hk-key' \
  --header 'Content-Type: application/json'
  • Response body
json
{
  "id": "asdsdssdsdhao",
  "status": "completed",
  "video_url": "https://filesystem.site/cdn/20250806/5VpavR5qkSpnsbFbTbTpC6aVPQMrgi.mp4"
}
{
  "id": "asdsdssdsdhao",
  "status": "completed",
  "video_url": "https://filesystem.site/cdn/20250806/5VpavR5qkSpnsbFbTbTpC6aVPQMrgi.mp4"
}

2. Chat Format

shell
curl 'https://api.open-hk.com/v1/chat/completions' \
  -H 'Authorization: Bearer hk-your-api-key' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data '{
    "max_tokens": 8192,
    "model": "sora_video2",
    "temperature": 0.5,
    "top_p": 1,
    "presence_penalty": 0,
    "frequency_penalty": 0,
    "messages": [
        {
            "role": "user",
            "content": [
                {
                    "type": "text",
                    "text": "狗狗在草地上打滚"
                },
                {
                    "type": "image_url",
                    "image_url": {
                        "url": "你的图片url"
                    }
                }
            ]
        }
    ],
    "stream": false
}'
curl 'https://api.open-hk.com/v1/chat/completions' \
  -H 'Authorization: Bearer hk-your-api-key' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data '{
    "max_tokens": 8192,
    "model": "sora_video2",
    "temperature": 0.5,
    "top_p": 1,
    "presence_penalty": 0,
    "frequency_penalty": 0,
    "messages": [
        {
            "role": "user",
            "content": [
                {
                    "type": "text",
                    "text": "狗狗在草地上打滚"
                },
                {
                    "type": "image_url",
                    "image_url": {
                        "url": "你的图片url"
                    }
                }
            ]
        }
    ],
    "stream": false
}'

3. Dalle Format

3.1 Text-to-Video

shell
curl  https://api.openai-hk.com/v1/images/generations \
  -H 'Authorization: Bearer hk-替换为你的key' \
  -H "Content-Type: application/json" \
  -d '{
    "model": "sora_video2",
    "prompt": "狗狗在草地上打滚",
    "n": 1,
    "size": "720x720",
    "quality": "low"
  }'
curl  https://api.openai-hk.com/v1/images/generations \
  -H 'Authorization: Bearer hk-替换为你的key' \
  -H "Content-Type: application/json" \
  -d '{
    "model": "sora_video2",
    "prompt": "狗狗在草地上打滚",
    "n": 1,
    "size": "720x720",
    "quality": "low"
  }'

3.2 Image-to-Video

shell
curl -X POST "https://api.openai-hk.com/v1/images/edits" \
  -H "Authorization: Bearer hk-替换为你的key" \
  -F "model=sora_video2" \
  -F "image[]=@body-lotion.png" \
  -F 'prompt=狗狗在草地上打滚'
curl -X POST "https://api.openai-hk.com/v1/images/edits" \
  -H "Authorization: Bearer hk-替换为你的key" \
  -F "model=sora_video2" \
  -F "image[]=@body-lotion.png" \
  -F 'prompt=狗狗在草地上打滚'

4. OpenAI Video Format

  • Reference docs: click here
  • This site supports sora-2

4.1 Create Task

shell
curl --request POST \
  --url https://api.openai-hk.com/v1/videos \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'content-type: multipart/form-data' \
  --form 'prompt=让画面动起来' \
  --form 'seconds=15' \
  --form 'input_reference=@body-lotion.png' \
  --form model=sora-2
curl --request POST \
  --url https://api.openai-hk.com/v1/videos \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'content-type: multipart/form-data' \
  --form 'prompt=让画面动起来' \
  --form 'seconds=15' \
  --form 'input_reference=@body-lotion.png' \
  --form model=sora-2
  • Response
json
{
  "id": "task_id",
  "object": "video",
  "model": "sora-2",
  "status": "queued",
  "progress": 0,
  "created_at": 1760698075017,
  "seconds": "15"
}
{
  "id": "task_id",
  "object": "video",
  "model": "sora-2",
  "status": "queued",
  "progress": 0,
  "created_at": 1760698075017,
  "seconds": "15"
}

4.2 Query Task Status

get https://api.openai-hk.com/v1/videos/{task_id}

  • Response
json
{
  "id": "task_id",
  "object": "video",
  "model": "sora-2",
  "status": "queued",
  "progress": 0,
  "created_at": 1760698075017,
  "seconds": "15"
}
{
  "id": "task_id",
  "object": "video",
  "model": "sora-2",
  "status": "queued",
  "progress": 0,
  "created_at": 1760698075017,
  "seconds": "15"
}