Music prompt rejected by policy: rewrite only the flagged part

If Sume Music rejects a prompt on policy, change the flagged content but keep the musical brief. The docs say not to flatten it to a generic bed; here is how.

5 min readSume
All posts

After a policy rejection from Sume Music, change the flagged part of the prompt and keep the rest of the musical brief; the docs also say to retry only within your authorized budget and not to reduce the request to a generic bed. Each retry is a new generation at $0.125.

The rule comes from the Music 1.0 docs. It is aimed at agents and scripts that retry on their own, because a shortcut that strips the prompt down to "calm music" returns a track that no longer fits the video.

What counts as the flagged part?

The error does not need a guess about which words offend; the practical approach is to look for named people, real song titles, quoted lyrics or requests to sound like a specific living artist, and change those. Describe the sound instead: tempo, instruments, texture, structure. The docs' own example is a seven-axis brief with a tempo in BPM, a key, named instruments, an arc over time, and a production era.

Rewrite pattern (Sume Music docs for the brief shape, checked 2026-10-10)
Flagged-style contentReplace with
A named artist or bandGenre, era, instrumentation
A named songTempo, mood, structure
Quoted lyricsA description of the vocal feel, or "Instrumental, no vocals"
A person's voiceAn abstract vocal texture, or none

How many retries is enough?

Set the budget before the loop starts. Three attempts cost $0.375; five cost $0.625. If the third attempt is also rejected, a person should read the prompt, because a loop that rewrites blindly tends to drift from the brief. Log the attempt number and the changed phrase with each try.

  • Cap attempts per scene.
  • Log the phrase that changed.
  • Stop and ask a person after the cap.
  • Never remove the tempo, instruments or arc to "be safe".

What not to send

The route rejects a few fields outright, which is different from a policy rejection and cheaper to fix. duration and duration_seconds are rejected, and a non-empty negative_prompt returns 400 with public_reason=negative_prompt_unsupported. Describe what you want in the prompt, including "Instrumental, no vocals" when you want none. If you attach an image_url, it must be public HTTPS.

Rejected before generation (Music 1.0 docs, checked 2026-10-10)
FieldResult
duration or duration_secondsRejected
Non-empty negative_prompt400, negative_prompt_unsupported
Non-HTTPS image_urlRejected
Prompt over 5,000 charactersRejected

Keep the brief in version control

Store the brief as text next to the project, with the rewrites listed in order. When the track is accepted, the approved prompt is the one to reuse for the next scene in the same project, since the next scene should contrast or continue it on purpose.

A retry loop that behaves

If an agent calls the music route for you, give it explicit rules in its instructions: one brief per scene, a cap of three attempts, a rule that only the flagged phrase may change, and a requirement to report the final prompt back. An agent that rewrites the whole prompt after each rejection will spend the budget without converging.

Also make the failure visible. A rejected scene should show up in your project notes with the phrase that was changed, so that a person can see the pattern: if one client keeps naming a band, the fix belongs in the brief template, not in the retry loop.

  • One brief per scene.
  • At most three attempts at $0.125 each.
  • Report the final prompt with the track.
  • Escalate to a person when the cap is hit.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume