Skip to main content
PATCH
Update Stream

Overview

Partially updates an existing stream. Send only the fields you want to change. Updates are allowed while the stream is scheduled, setting up, or started. There are two kinds of changes:
  • Configuration updates - rescheduling, replacing voices or dictionaries, and adding or modifying audio selections, profiles, pipelines, and targets. These are persisted into the stream configuration.
  • Live pipeline patches (pipeline_patches) - runtime-only adjustments to a running stream: turn dubbing on or off, adjust the dubbing mix, or nudge audio/video sync. These take effect within seconds and are not persisted.
List fields that carry ids (audio_selections, processing_profiles, encoding_profiles, pipelines, target_streams) are merged by id: entries you send are added or replaced as a whole, and existing entries are never removed.
You can paste a full JSON body into the Try it form and the fields fill in automatically - copy any example below as a starting point.

Turning dubbing on and off

Set dubbing_enabled on a pipeline patch. With false, dubbing pauses and the original audio passes through; with true, dubbing resumes.

Common updates

Errors

  • 400 - The stream has already finished and can no longer be updated.
  • 404 - No stream with this ID belongs to your team.
  • 422 - Validation error: unknown pipeline_id, an id reference that doesn’t resolve, or times without a matching timezone.

Authorizations

x-api-key
string
header
required

The x-api-key is a custom header required for authenticating requests to our API. Include this header in your request with the appropriate API key value to securely access our endpoints. You can find your API key(s) in the 'API' section of our studio website.

Path Parameters

stream_id
integer
required

Identifier of the stream to update.

Body

application/json

Partial update of a stream. All fields are optional; omit anything you do not want to change. List fields carrying ids (audio_selections, processing_profiles, encoding_profiles, pipelines, target_streams) are merged by id: entries you send are added or replaced, existing entries are never removed.

name
string | null

New display name.

description
string | null

New description.

initial_delay
integer | null

New setup lead time in seconds.

Required range: x > 0
voices
integer[] | null

Replacement list of voice IDs. Empty means voices are cloned from the source speakers.

dictionaries
integer[] | null

Replacement list of dictionary IDs (up to 5).

Maximum array length: 5
start_time
string<date-time> | null

New scheduled start (ISO 8601 with UTC offset). Requires timezone.

end_time
string<date-time> | null

New scheduled end (ISO 8601 with UTC offset). Requires timezone.

timezone
string | null

IANA time zone the updated times are expressed in.

audio_selections
AudioSelection · object[] | null

Audio selections to add or replace (merged by id).

processing_profiles
ProcessingProfile · object[] | null

Processing profiles to add or replace (merged by id).

encoding_profiles
EncodingProfile · object[] | null

Encoding profiles to add or replace (merged by id).

pipelines
ProcessingPipeline · object[] | null

Pipelines to add or replace (merged by id).

source_stream
SourceStream · object | null

Replacement source configuration.

target_streams
TargetStream · object[] | null

Target streams to add or replace (merged by id).

pipeline_patches
PipelinePatch · object[] | null

Live, runtime-only adjustments to running pipelines: toggle dubbing, adjust the mix, or nudge A/V sync. Applied immediately and not persisted into the stream configuration.

Response

Successful Response

The response is of type Response Patch Stream Data Stream Stream Id Patch · object.

Last modified on July 24, 2026