Skip to content

Sora / Veo Video ​

Sora / Veo cover text-to-video, image-to-video, extension and remix scenarios. Use the common MoonNexAI video-task API and query results using the returned task ID.

sora-v3-fast and sora-v3-pro do not support creating model asset IDs through /v1/assets/uploads mode=asset. Use public URLs from your own storage in production. For local integration tests, explicitly call /v1/assets/uploads mode=oss for a temporary URL. MoonNexAI OSS does not guarantee long-term retention or continuous availability.

Create Video ​

bash
curl https://moonnexai.com/v1/videos \
  -H "Authorization: Bearer <MOONNEXAI_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "sora-v3-fast",
    "prompt": "A cinematic city street at night, slow camera movement, realistic lighting.",
    "seconds": "5",
    "video_config": {
      "aspect_ratio": "16:9",
      "resolution_name": "720p"
    }
  }'

image-to-video ​

json
{
  "model": "sora-v3-fast",
  "prompt": "让产品缓慢旋转,镜头轻微推进,保持真实光照。",
  "seconds": "5",
  "reference_image_urls": [
    "https://example.com/product.png"
  ],
  "video_config": {
    "aspect_ratio": "1:1",
    "resolution_name": "720p"
  }
}

An image with a stable public URL does not need uploading first. mode=oss is for local integration tests; test URLs are not guaranteed to remain valid. Use your own stable storage URLs in production.

Pass first/last frames as first_frame_url and last_frame_url. Mixed-media requests can use content[], with role set to reference_image, first_frame, last_frame, reference_video or reference_audio.

Create Role ​

If your business needs a reuse role or subject, you can use the role to create API:

bash
curl https://moonnexai.com/sora/v1/characters \
  -H "Authorization: Bearer <MOONNEXAI_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "brand-host",
    "source_url": "https://example.com/character.mp4",
    "seconds": 5
  }'

Remix ​

bash
curl https://moonnexai.com/v1/videos/video_xxx/remix \
  -H "Authorization: Bearer <MOONNEXAI_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "sora-v3-fast",
    "prompt": "保持原主体,改成清晨自然光,镜头更稳定。"
  }'

Query task ​

bash
curl https://moonnexai.com/v1/videos/task_xxx \
  -H "Authorization: Bearer <MOONNEXAI_API_KEY>"

Read output[].url, output.url, url, video_url, result_url or metadata.url after completion.