Docs

Running a model

MiniMaxIn the appsText to audio

MiniMax Music 3

Words and a mood in. A full song with vocals out, 44.1 kHz stereo.

POSTauray-ai/minimax-music-3/text-to-audio
openapi.jsonllms.txt

One of the models behind Auray's apps, under the auray-ai/ namespace.

Its request shape is published below. Whether it runs right now is GET /v1/catalogue's word, with no key needed: its addresses say connected for an address that runs, and a submit to any other is refused before anything is charged — described answers 501 model_not_connected, paused 503 model_disabled.

Category text-to-audio · Scope audio:write (or music:write on an older key) · Price A flat base per job plus one credit for each block of seconds of audio you ask for; GET /v1/plans serves the base and the seconds a credit buys in force as price_keys (music.base, music.seconds_per_credit), the submit quotes the credits, and the part for audio that comes back short is refunded.

#Input

FieldTypeRequiredDefaultDescription
promptstringyes—The song to write — genre, mood, instruments, voice. Shares the model's 5,000-token budget with the lyrics. Documented range: up to 5,000 characters.
duration_secondsintegeryes—Ten seconds to five minutes. Outside 10–300 the request is refused with 422 duration_out_of_range, before any charge. An instrumental runs at least 90% of it. A song with lyrics ends when its lyrics do, so a long one needs enough of them. Seconds that do not arrive are refunded. Documented range: 10 to 300.
lyricsstringno—Omit for an instrumental. The prompt and the lyrics together may come to at most 5,000 tokens of the model's own tokenizer, counted with the few it adds around them. English lyrics fit at the full 10,000 characters; Chinese, Japanese or Korean lyrics, or a long prompt beside long lyrics, reach the token budget first. Past it the request is refused with 422 prompt_and_lyrics_too_long, which says how many tokens it came to, before any charge. Documented range: up to 10,000 characters.
seedintegerno—Reuse one to get the same song back. Outside the range it is refused with 422 seed_out_of_range, before any charge. Documented range: 0 to 2,147,483,647.
idempotency_keystringno—Your own name for this request. Send the same one twice and the second call is answered with the first request rather than charged again. Idempotency-Key: as a header is accepted as an alias — that is the spelling a retrying proxy replays, and the one to use when running a model on auray.run, where a request that outlives its connection is answered 504 and recovered by replay. Omit it and the platform mints one. 1 to 64 characters.

#Example

curl -X POST https://queue.auray.run/auray-ai/minimax-music-3/text-to-audio \
  -H "Authorization: Bearer $AURAY_API_KEY" \
  -H "content-type: application/json" \
  -d '{
  "prompt": "a brass orrery on a walnut desk, morning light from a window to the left",
  "duration_seconds": 10
}'

The same body on https://auray.run runs synchronously and answers the result — unless it usually takes longer than a run may hold its connection, which is refused 400 model_not_synchronous before anything is charged. Options — ?webhook=, ?wait=, priority and timeout headers — are on Submit a request.

#Machine contracts

  • openapi.json — this page as an OpenAPI 3.1 document, public.
  • llms.txt — the same, written for an agent.

Start typing to search every page of the documentation.

Up arrow Down arrow to moveEnter to openEscape to close