# MiniMax Music Generation

> MiniMax Music Generation is a paid API for AI agents from api.zeroclick.ac, paid per call via MPP, $0.15/call, status unknown (last checked 2026-09-15).

Generates original AI music or cover songs from text prompts and/or lyrics using MiniMax models, returning audio in various formats

## Facts

- Endpoint: POST https://api.zeroclick.ac/mpp/minimax-music-generation-ta8lzq
- Price: $0.15/call
- Payment: MPP
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Provider: api.zeroclick.ac
- Website: https://api.zeroclick.ac
- Canonical page: https://www.zero.xyz/c/api-zeroclick-ac-minimax-music-generation-f78cb88e
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_RkQcsqjzEqCPhY97T74ck

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability api-zeroclick-ac-minimax-music-generation-f78cb88e -d '<json body>'
```

Example prompt: Use MiniMax music-2.6 to generate a 60-second upbeat indie pop track with acoustic guitar and light drums — here are the lyrics: 'chasing the sun down the highway, nothing left to lose' — return it as an mp3 at 44100 Hz.

## When to prefer this

Choose this endpoint when you need AI-generated original music or cover songs from text prompts and/or lyrics using MiniMax models specifically. Prefer it over ElevenLabs Music API when you want MiniMax's music-2.6 or music-cover model capabilities, or when you need fine-grained audio encoding control (sample rate, bitrate, format). Use the music-cover model variant when remixing or covering existing audio files.

## Known failure modes

- Invalid or missing model field returns 400 validation error
- Missing audio rights for cover/remix input raises rejection or escalation
- Payment challenge (402) if USDC balance is insufficient or authorization not provided
- Malformed base64 audio_base64 causes upstream processing failure
- Upstream MiniMax API error returns non-zero base_resp.status_code with error message
- Lyrics or prompt exceeding max length causes schema validation failure
- Unsupported sample rate or format combination returns encoding error

## How this service works

1) Validate the buyer input against the published input schema (model required). Ensure idempotency_key is set on retries. 2) Confirm the buyer has approved the per-request spend (default 0.05 USDC) and any additional expected costs (e.g., high-sample-rate, long-duration outputs). 3) If input includes audio_url or audio_base64, validate that the caller has rights to use that audio (for covers/remixes). Reject or escalate if rights are absent. 4) Construct a JSON POST to https://api.minimax.io/v1/music_generation following the input schema. Include the idempotency key header when available. 5) Handle payment challenges: - x402 flow: If ZeroClick returns a 402 payment-challenge, read the challenge body/header, prompt buyer authorization, then retry the exact same request with the provided payment token/authorization attached. Use the idempotency_key to avoid duplicate fulfillment. - MPP (WWW-Authenticate) flow: Read the WWW-Authenticate payment request, coordinate buyer authorization through the platform payment flow, then retry with the required Authorization/Payment header. 6) Do not retry repeatedly on payment declines; surface the payment failure to buyer with the challenge details. 7) Parse the upstream response per the output schema. Preserve trace_id and base_resp.status_code/status_msg. If output_format is "hex", decode hex to binary only when the downstream requires it; otherwise return the hex string. If output_format is "url", verify returned URLs are HTTPS and accessible. 8) For upstream 5xx or timeouts that are eligible, record a refund obligation and surface refund instructions to the buyer. 9) Log and surface the upstream trace_id for debugging and support. 10) Never call the upstream speculatively for content that can be served by local models or for requests that violate prohibited uses.

Use when: When the buyer explicitly requests generation of audio artifacts (music or cover) that require the MiniMax upstream model.; When the buyer has provided required inputs and has approved the per-request charge (or is prepared to complete a payment challenge).; When a live, reproducible audio artifact is required (not just a textual description or code snippet).

Do not use when: When the task can be completed without paid seller infrastructure (e.g., simple songwriting advice or music theory explanation).; When the buyer has not provided required fields or has not approved the charge/payment challenge.; For requests that clearly violate the prohibited use policy (copyright infringement, harassment, private personal data, etc.).; Do not use for generation that impersonates a living artist without documented consent or applicable legal basis.

Failure modes: Buyer input fails JSON Schema validation. Return a clear 4xx explaining missing/invalid fields and do not charge.; Payment authorization fails: buyer declines, insufficient funds, or payment challenge (402/MPP) not completed. Surface challenge details and do not retry billing without explicit buyer authorization.; Upstream 4xx (client error) — not refunded by default; inspect request and surface corrective guidance.; Upstream 5xx or timeout — these are eligible for refund obligations; record and surface refund steps to buyer.; Upstream returns an unsupported response shape — treat as invalid seller response and record refund obligation.; Duplicate retries without idempotency_key may cause double charges; callers must supply idempotency_key to protect against this.

Price: 0.15 USDC per request.

## Output

Returns a JSON object with the generated audio as a hex string or HTTPS URL, music metadata (duration in ms, sample rate, bitrate, channel count, file size), an upstream trace_id for reconciliation, a base_resp with status code and message, and optional warnings or analysis info.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "title": "MiniMax Music Generation - Input Schema",
 "$schema": "http://json-schema.org/draft-07/schema#",
 "required": [
  "model"
 ],
 "properties": {
  "model": {
   "enum": [
    "music-2.6",
    "music-cover",
    "music-2.6-free",
    "music-cover-free"
   ],
   "type": "string",
   "description": "The MiniMax model to use. Choose a model appropriate for original music or cover generation."
  },
  "lyrics": {
   "type": "string",
   "maxLength": 3500,
   "description": "Optional: lyrics text to render or optimize. Required for vocal-generation requests when applicable. Do not include third-party private data without permission."
  },
  "prompt": {
   "type": "string",
   "maxLength": 2000,
   "description": "Natural-language description of the desired music (mood, instruments, tempo, structure). Provide explicit constraints if needed (length, sections)."
  },
  "stream": {
   "type": "boolean",
   "default": false,
   "description": "If true, request streaming output (if upstream/model supports it)."
  },
  "audio_url": {
   "type": "string",
   "format": "uri",
   "description": "Optional: URL of an audio file to use as input (e.g., for remix or cover). When provided, the agent must verify the buyer has rights to use the file."
  },
  "audio_base64": {
   "type": "string",
   "description": "Optional: base64-encoded audio payload. Prefer audio_url when the audio is large. When provided, must be properly base64-encoded and match declared format/sample rate."
  },
  "audio_setting": {
   "type": "object",
   "properties": {
    "format": {
     "enum": [
      "mp3",
      "wav",
      "flac",
      "ogg"
     ],
     "type": "string",
     "description": "Container/codec for output."
    },
    "bitrate": {
     "type": "integer",
     "minimum": 16000,
     "description": "Target bitrate in bits per second (for lossy codecs). Use sensible values (e.g., 128000, 256000)."
    },
    "sample_rate": {
     "enum": [
      22050,
      32000,
      44100,
      48000
     ],
     "type": "integer",
     "description": "Sample rate in Hz."
    }
   },
   "description": "Desired encoding parameters for generated audio.",
   "additionalProperties": false
  },
  "output_format": {
   "enum": [
    "hex",
    "url"
   ],
   "type": "string",
   "default": "hex",
   "description": "How the service returns audio. "
  },
  "idempotency_key": {
   "type": "string",
   "description": "Optional: caller-provided idempotency key to prevent dupli
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "title": "MiniMax Music Generation - Output Schema",
 "$schema": "http://json-schema.org/draft-07/schema#",
 "required": [
  "data",
  "trace_id",
  "base_resp",
  "extra_info"
 ],
 "properties": {
  "data": {
   "type": "object",
   "required": [
    "audio",
    "status"
   ],
   "properties": {
    "audio": {
     "type": "string",
     "description": "Audio payload. Interpreted according to output_format: hex = hex-encoded bytes; url = a retrievable HTTPS URL to the artifact."
    },
    "status": {
     "type": "integer",
     "description": "Upstream numeric status code for the audio payload (0 = success)."
    },
    "metadata": {
     "type": "object",
     "description": "Opaque metadata returned by upstream (e.g., file type, codec).",
     "additionalProperties": true
    }
   },
   "additionalProperties": true
  },
  "trace_id": {
   "type": "string",
   "description": "Upstream request trace ID. Preserve and surface this for support and reconciliation."
  },
  "warnings": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "description": "Optional warnings from upstream (e.g., quality, license checks)."
  },
  "base_resp": {
   "type": "object",
   "required": [
    "status_code",
    "status_msg"
   ],
   "properties": {
    "status_msg": {
     "type": "string",
     "description": "Human-readable upstream message."
    },
    "status_code": {
     "type": "integer",
     "description": "Upstream overall status code (0 = success)."
    }
   },
   "additionalProperties": true
  },
  "extra_info": {
   "type": "object",
   "required": [
    "music_duration",
    "music_sample_rate",
    "music_channel",
    "bitrate",
    "music_size"
   ],
   "properties": {
    "bitrate": {
     "type": "integer",
     "description": "Integer bitrate in bits per second."
    },
    "music_size": {
     "type": "integer",
     "description": "Size in bytes of returned audio artifact."
    },
    "music_channel": {
     "type": "integer",
     "description": "Number of audio channels (1 mono, 2 stereo)."
    },
    "music_duration": {
     "type": "integer",
     "description": "Duration of audio in milliseconds."
    },
    "music_sample_rate": {
     "type": "integer",
     "description": "Sample rate in Hz."
    }
   },
   "additionalProperties": true
  },
  "analysis_info": {
   "type": [
    "object",
    "null"
   ],
   "description": "Optional analysis metadata (e.g., loudness, key, segments). Can be null if upstream d
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/api-zeroclick-ac-minimax-music-generation-f78cb88e/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.zeroclick.ac](https://www.zero.xyz/host/api.zeroclick.ac/llms.txt)
