Skip to content

MAGI-1 (Distilled)

Integrate

Model id magi-distilled
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.com/v1/run/magi-distilled?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field"
  }'

# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.com/v1/requests/REQUEST_ID?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY"

Files like the example: $0.32 320 API credits your files are measured before the run Run it on this page

Get API key
Sand AI Text to Video Fastup to 720p #text-to-video

Distilled MAGI-1 text-to-video with 480p or 720p output and selectable step counts of 4 to 32

Sand AI · Video

Your first result goes here

Build a request below and run it with your API key. Outputs are copied to our storage, kept forever or 7 days for free.

Build a request

Controls are generated from the model schema. The code and the price update as you change them.

•required

Text instructions that guide video generation.

resolution default 720p

Output video resolution, either 480p or 720p.

num_inference_steps default 16

Sampling step count, trading longer processing time for better quality as the count increases.

aspect_ratio default auto

Generated-video proportions, selected automatically from the input image when set to 'auto'.

default 96

Output frame count, with a minimum of 96 and a maximum of 192.

Advanced seed · enable_safety_checker

Seed that makes generation reproducible. Setting it to None selects a seed randomly.

POST /run/magi-distilled?wait=20 quote → $0.32
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.com/v1/run/magi-distilled?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field"
  }'

# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.com/v1/requests/REQUEST_ID?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY"

Run this request

Your key stays in this browser: it is sent only to the Doitong API and saved (localStorage) only if you tick Remember. Get an API key

About MAGI-1 (Distilled)

Generates a video from a text `prompt`. `num_frames` runs from 96 to 192, `resolution` is 480p or 720p, and `aspect_ratio` can be auto, 16:9, 9:16 or 1:1. `num_inference_steps` accepts 4, 8, 16 or 32, trading quality against speed. A `seed` allows reproducible results.

Parameters

NameType DefaultAllowed Description
promptrequired
Typestring
Text instructions that guide video generation.
num_framesoptional
Typeinteger | null
Default96
96 – 192
Output frame count, with a minimum of 96 and a maximum of 192.
seedoptional
Typeinteger | null
Seed that makes generation reproducible. Setting it to None selects a seed randomly.
resolutionoptional
Typeenum
Default720p
480p720p
Output video resolution, either 480p or 720p.
num_inference_stepsoptional
Typeenum
Default16
481632
Sampling step count, trading longer processing time for better quality as the count increases.
enable_safety_checkeroptional
Typeboolean
Defaulttrue
Safety-checking switch whose off setting requires account authorization. Without that authorization, every request is checked regardless of the setting; true enables the checker.
aspect_ratiooptional
Typeenum
Defaultauto
auto16:99:161:1
Generated-video proportions, selected automatically from the input image when set to 'auto'.
required

Output

GET /requests/req_8k2m4q7x1z9c3v5b6n0p2r4t
{
  "id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
  "object": "request",
  "model": "magi-distilled",
  "status": "succeeded",
  "created_at": "2026-10-20T12:00:00Z",
  "started_at": "2026-10-20T12:00:02Z",
  "completed_at": "2026-10-20T12:00:09Z",
  "queue_position": null,
  "cost": {
    "credits": 320,
    "usd": "0.32",
    "charged": 320,
    "refunded": 0
  },
  "input": {
    "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field"
  },
  "output": {
    "video": {
      "url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp4",
      "content_type": "video/mp4",
      "file_name": "0-output.mp4",
      "file_size": 1843200
    },
    "seed": 42
  },
  "outputs": [
    {
      "type": "video",
      "url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp4",
      "content_type": "video/mp4",
      "file_size": 1843200,
      "width": 1280,
      "height": 720,
      "duration": 5,
      "stored": true
    }
  ],
  "error": null,
  "metrics": {
    "inference_seconds": 6.8
  },
  "urls": {
    "self": "https://api.doitong.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
    "cancel": "https://api.doitong.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
  }
}
Your files, your choiceEvery outputs[].url is a copy on our storage: kept forever (paid per GB-month) or 7 days for free, by your account setting or ?storage=.
Same shape on every modeltype, url, content_type, width, height and duration, for images, video and audio alike. output is the model’s own result object.
Fields of output
video
object {url, content_type, file_name, file_size}Video file produced by generation.
seed
integerSeed value applied during generation.

More models: Text to Video

For AI agents: this page as Markdown is at https://doitong.com/developers/models/magi-distilled.md. All models and guides: https://doitong.com/developers/llms.txt