Skip to main content
Use the client from request setup. These examples assume api, userAddress, and the returned songId are available. api includes the session token and selected account headers.

Extract a time range

The response is ready immediately with an inactive take. start and end are seconds on the selected source. Pass stemId to slice a particular stem. This does not bounce your live arrangement or effects. The extracted file begins at its own time zero; its provenance records where it belongs on the song timeline. Use candidate merge to place it correctly.

Separate instruments

Choose a stem ID from /api/options, such as vocals, drums, bass, other or instrumental. Even though submission returns HTTP 200, the body can say pending or processing. Use the polling function from job handling.
Keep the returned taskId, songId, task, and optional stemId. A polling timeout stops your client from waiting; it does not cancel the job. On ready, use result.stems. Separation creates active takes for the returned tracks, with those stems initially muted. Reload the project. Your player can mute Master and unmute selected stems to audition them without doubling the same recording.
stem is one returned stem selected by your user. Mixer persistence does not render a new audio file.