Make one audio piece
soclo_audio_makeSpends credits: makes one audio piece (music, sound_effects, voiceover in the line’s own language, or soundtrack). Read soclo_audio_quote first and pass its exact expectedCredits and pricingVersion so a moved price refuses uncharged. Show the owner the storyboard (soclo_host_plan_state) and the quote, and get their yes before a paid make; if the owner says "just make it", proceed through the remaining approved makes within the same ceilings without re-asking per piece, stopping if a price changes. Supply one stable clientRequestId per purchase: reconcile an unknown outcome under the same id with soclo_audio_recover and do not start a new paid request or mint a replacement id (duplicate_request means the earlier attempt was charged). For re-takes, re-read the quote and use a new clientRequestId; confirm debits in soclo_wallet. Pass the returned requestId, statusUrl, responseUrl and receiptId to soclo_audio_poll.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | music (a music bed) and sound_effects are priced by length; voiceover (speaks a line) and soundtrack (scores a described mood) have a flat price. | |
| voice | No | For voiceover: optional voice. Every voice speaks the line in the language it is written in. | |
| prompt | Yes | For make: the music/SFX description, or the exact spoken line(s) for voiceover. | |
| duration | No | For music and sound_effects, within that model’s range: music 3-600 seconds; sound_effects 0.5-22 seconds. Fractional seconds are fine (music is priced per started minute). Use the value you quoted. | |
| pricingVersion | Yes | Required for every make: from the quote. | |
| clientRequestId | Yes | Required for make and ID-only recover: persist one stable ID per purchase before submission. Recover that same ID after a lost acknowledgement; do not mint a replacement. | |
| expectedCredits | Yes | Required for every make: the exact figure from the server quote. Zero is valid only when the server quotes zero; Soclo checks the price again before charging. | |
| ownerApprovedPrice | Yes | Required true for make only after the owner has seen the quote/flat price and said yes (or said "just make it" for this run). |