Mage API · Video model

Melon API

Anime in motion, with optional audio

Get an API keyTry Melon in the playground
POST https://api.mage.space/v1/melon/generate

At a glance

The Melon API runs Melon and 1 other variant through Mage at POST https://api.mage.space/v1/melon/generate. A request at the default settings costs 147 Gems (about $0.147), with no subscription. Melon takes saved characters, references by @handle in the prompt.

Overview

What the Melon API does

Our anime video model, as Melon and Melon Pro. Start and end frames or up to 7 references or Characters, optional audio, 3 to 16 seconds at up to 1080p.

Mage's anime video model, as Melon and Melon Pro, with optional audio.

It accepts first_image, last_image, image, additional_images as inputs.

Quick start

Call the Melon API

Set MAGE_API_KEY, submit to /melon/generate, and poll status_url until the request completes.

cURL
STATUS_URL=$(curl --request POST 'https://api.mage.space/v1/melon/generate' \
  --header "Authorization: Bearer $MAGE_API_KEY" \
  --header 'Content-Type: application/json' \
  --data '{
  "prompt": "A slow push-in on a lighthouse at dusk, waves breaking below",
  "aspect_ratio": "16:9",
  "duration": "4",
  "model_id": "melon"
}' | jq -r '.status_url')

# Repeat until status is "completed"; result.url is the file
curl "$STATUS_URL" --header "Authorization: Bearer $MAGE_API_KEY"
Python
import os, time, requests

headers = {"Authorization": f"Bearer {os.environ['MAGE_API_KEY']}"}
request = requests.post(
    "https://api.mage.space/v1/melon/generate",
    headers=headers,
    json={
      "prompt": "A slow push-in on a lighthouse at dusk, waves breaking below",
      "aspect_ratio": "16:9",
      "duration": "4",
      "model_id": "melon"
    },
).json()

while request["status"] in ("queued", "in_progress"):
    time.sleep(3)
    request = requests.get(request["status_url"], headers=headers).json()

print(request["status"], request["result"] and request["result"]["url"])
JavaScript
const headers = {
  Authorization: `Bearer ${process.env.MAGE_API_KEY}`,
  'Content-Type': 'application/json',
};
let request = await fetch('https://api.mage.space/v1/melon/generate', {
  method: 'POST',
  headers,
  body: JSON.stringify({
    "prompt": "A slow push-in on a lighthouse at dusk, waves breaking below",
    "aspect_ratio": "16:9",
    "duration": "4",
    "model_id": "melon"
  }),
}).then((response) => response.json());

while (['queued', 'in_progress'].includes(request.status)) {
  await new Promise((resolve) => setTimeout(resolve, 3000));
  request = await fetch(request.status_url, { headers }).then((r) => r.json());
}

console.log(request.status, request.result?.url);

Models

Melon model_id values

Send model_id to pick a variant. A request without one runs the default.

model_idNameDefault
melonMelonYes
melon-proMelon Pro

Options

Melon parameters

Allowed values across all variants; a variant may offer fewer. The docs list the options per variant.

FieldValues
aspect_ratio16:9, 9:16, 1:1, 3:4, 4:3
resolution540p, 720p, 1080p
duration3, 4, 5, 6, 8, 10, 16

Inputs

Media inputs Melon accepts

Send each as an https URL, a data URL, or an upload of up to 100 MB.

FieldRole
first_imageThe first frame image.
last_imageThe last frame image.
imageThe reference image.
additional_imagesAdditional reference images.

Rules

What the Melon API enforces

More video models

Other video generation APIs on Mage

Video · from 30 Gems

MiniMax-H3 API

Fast open video with stereo sound

Video · from 338 Gems

Plum API

Sound on every clip, up to 2K

Video · from 360 Gems

Raspberry API

Characters brought to life from a first frame

Video · from 40 Gems

Wan Video v2.2 API

Open-weights video with a Lightning variant

Video · from 189 Gems

Berry API

Video that stays true to your references

Video · from 360 Gems

Blueberry API

Pin the first and last frame

FAQ

Frequently asked questions

How much does the Melon API cost?

A Melon request at the default settings (Melon) costs 147 Gems, about $0.147. Other resolutions, durations, and variants change the price; the response reports the exact charge. A generation that fails is refunded; one Mage's content policy blocks is not.

What is the Melon API endpoint?

POST https://api.mage.space/v1/melon/generate with an Authorization: Bearer header carrying your Mage API key. The response includes a status_url to poll for the result.

Which Melon models can I call?

melon (Melon), melon-pro (Melon Pro). The default is Melon.

Does Melon support reference images or characters?

Melon accepts first_image, last_image, image, additional_images. Melon takes saved characters, references by @handle in the prompt.

Can I use Melon from Claude or ChatGPT?

Yes. Connect the Mage MCP server to Claude, ChatGPT, Claude Code, Grok, or Cursor and ask for Melon by name. Your assistant reads its options with get_model and quotes the price before it generates.

How long are Melon results kept?

Results and inputs are kept for 30 days. Download anything you want to keep to your own storage.

Start building with Mage

One account, one Gems balance, every model. Pay only for what you generate.

Get an API keyTry Melon in the playground

Related