Mint a presigned upload URL
Step 1 of the upload: returns a 15-minute presigned PUT URL plus the id of a new upload. Then PUT the bytes directly to upload_url with a Content-Type header exactly matching the mime_type you sent here — a mismatch is rejected by storage — then call POST /agent/background-audio/{id}/finalize.
Authorizations
API key in format: rg_live_xxxx. Pass as a Bearer token in the Authorization header.
Body
Stable identifier; unique across all assets.
^[a-z0-9][a-z0-9_-]{1,63}$Display name for the asset.
1 - 80Container format of the file you are uploading. Several spellings of the same container are accepted — send the exact type your client reports (a browser's File.type on Windows is often audio/mp3 rather than audio/mpeg, and both are valid here), because the Content-Type on the PUT must match this value byte for byte or storage rejects the upload. Channels and sample rate are not constrained: Vocobase converts every upload into the mono, correct-rate asset the bot needs.
audio/wav, audio/x-wav, audio/wave, audio/vnd.wave, audio/mpeg, audio/mp3, audio/mp4, audio/m4a, audio/x-m4a, audio/aac, audio/ogg, audio/opus, audio/flac, audio/x-flac, audio/webm, audio/aiff, audio/x-aiff Size in bytes. Max 5 MB.
1 <= x <= 5242880