Skip to content

Moon-2.5-gl series ​

Moon-2.5 GL supports text-only, image-reference and mixed-media generation. Its public model is moon-2.5-gl-a. Use the common video-task API; billing depends on generated duration. Check the pricing API and console for current prices.

Current Configuration ​

ItemAnnotations
Create EntryPOST /v1/videos
Query EntryGET /v1/videos/{task_id} or GET /v1/tasks/{task_id}
Recommended media fieldreferences[]
resolution480P, 720P
duration4 to 30 sec
aspect ratio9:16, 16:9, 1:1, 21:9, 4:3, 3:4
billing-DPress the second billing.

Capacity boundaries ​

CapacitySupport
text-to-videoSupport
Picture referenceSupport, up to 30
Video referenceSupport, maximum 10
Audio Referencesupport, up to 10; pictures or videos must be provided at the same time
Mixed media assetsUp to 50 references media assets
media assets SourceStable public network URL or Asset://asset_xxx references available for current model

Audio references cannot be submitted as the only media assets. generate_audio is not the controlable capability of this model field. Please do not rely on this field control output track; the final audio orbit is based on the model results.

Create task ​

Pure Text Generation ​

bash
curl https://moonnexai.com/v1/videos \
  -H "Authorization: Bearer <MOONNEXAI_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "moon-2.5-gl-a",
    "prompt": "A calm cinematic shot of silver and teal ribbons flowing through a clean studio space.",
    "duration": 4,
    "ratio": "16:9",
    "resolution": "480P"
  }'

Mixed media references ​

json
{
  "model": "moon-2.5-gl-a",
  "prompt": "Keep the composition and motion style of the references, with a smooth cinematic camera move.",
  "duration": 8,
  "ratio": "16:9",
  "resolution": "720P",
  "references": [
    {
      "media_type": "image",
      "role": "reference_image",
      "url": "https://example.com/scene.png",
      "alias": "scene"
    },
    {
      "media_type": "video",
      "role": "reference_video",
      "url": "https://example.com/motion.mp4",
      "alias": "motion"
    }
  ]
}

Do not include @ in alias; use @alias in the prompt to bind the reference. Check that public URLs are anonymously downloadable, have the correct media type and remain valid throughout task execution.

Query Results ​

Create response means that only task has been submitted. Save task_id or id and then query task:

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

Check status and error. After task is successful, you can read video using the standard content portal:

bash
curl -L https://moonnexai.com/v1/videos/{task_id}/content \
  -H "Authorization: Bearer <MOONNEXAI_API_KEY>" \
  -o output.mp4

Relevant Pages ​