PATCH
/
v1
/
streams
/
{id}
Update a stream
curl --request PATCH \
  --url https://api.daydream.live/v1/streams/{id} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "params": {
    "model_id": "stabilityai/sd-turbo",
    "prompt": "<string>",
    "prompt_interpolation_method": "linear",
    "normalize_prompt_weights": true,
    "normalize_seed_weights": true,
    "negative_prompt": "<string>",
    "guidance_scale": 123,
    "delta": 123,
    "num_inference_steps": 0,
    "t_index_list": [
      0
    ],
    "use_safety_checker": true,
    "width": 0,
    "height": 0,
    "lora_dict": {},
    "use_lcm_lora": true,
    "lcm_lora_id": "<string>",
    "acceleration": "<string>",
    "use_denoising_batch": true,
    "do_add_noise": true,
    "seed": 0,
    "seed_interpolation_method": "linear",
    "enable_similar_image_filter": true,
    "similar_image_filter_threshold": 123,
    "similar_image_filter_max_skip_frame": 0,
    "controlnets": [
      {
        "model_id": "thibaud/controlnet-sd21-openpose-diffusers",
        "conditioning_scale": 123,
        "preprocessor": "<string>",
        "preprocessor_params": {},
        "enabled": true,
        "control_guidance_start": 123,
        "control_guidance_end": 123
      }
    ],
    "ip_adapter": {
      "scale": 123,
      "enabled": true,
      "type": "regular",
      "weight_type": "linear"
    },
    "ip_adapter_style_image_url": "<string>"
  },
  "prompt": "<string>"
}'
{
  "id": "<string>",
  "stream_key": "<string>",
  "output_stream_url": "<string>",
  "pipeline_params": {},
  "created_at": "<string>",
  "pipeline_id": "<string>",
  "output_playback_id": "<string>",
  "name": "<string>",
  "author": "<string>",
  "from_playground": true,
  "gateway_host": "<string>",
  "is_smoke_test": true,
  "whip_url": "<string>"
}
This is the preferred method for updating streams. It replaces the deprecated Submit StreamDiffusion Prompt endpoint and only requires the parameters you want to change.
This endpoint allows you to update pipeline parameters or prompts for an existing video processing stream with advanced parameters including controlnets, lora settings, and other configurations specifically designed for TouchDesigner integration.
The following parameters can be updated dynamically (no reload required): prompt, guidance_scale, delta, num_inference_steps, t_index_list, seed, controlnets.conditioning_scale. All other parameters trigger a full pipeline reload (~30s).

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

id
string
required

ID of the stream to update

Minimum length: 1

Body

application/json
params
object

Updated pipeline parameters for the stream

prompt
string

Updated prompt to apply to the stream processing

Response

Default Response

id
string
required

Unique identifier for the stream

stream_key
string
required

Unique key used for streaming to this endpoint

output_stream_url
string
required

URL where the processed stream output can be accessed

pipeline_params
object
required

Current configuration parameters for the stream pipeline

created_at
string
required

ISO timestamp when the stream was created

pipeline_id
string
required

ID of the processing pipeline being used

output_playback_id
string
required

Playback ID for accessing the stream output

name
string
required

Human-readable name of the stream

author
string
required

ID of the user who created this stream

from_playground
boolean
required

Whether this stream was created from the playground interface

gateway_host
string
required

Gateway server hostname handling this stream

is_smoke_test
boolean
required

Whether this is a smoke test stream

whip_url
string
required

WebRTC WHIP URL for stream ingestion