Skip to content

Replace Stream

PUT /api/v1/streams/{streamId}

Authentication options declared in the contract include user cookie session or bearer service token.

The shared authentication policy requires streams:configure. Resource access also depends on the caller’s role, organization, camera grants, and the operation’s validation.

User-session writes require recent authentication.

Authentication and permissions explains tokens, cookies, CSRF, and workspace context.

Name Location Required Type Description and constraints
streamId path Yes string (uuid)
If-Match header Yes integer minimum 1
X-EyesOnIt-Session-Id header No string (uuid) The sessionId the caller expects. Required when switching workspaces and for cookie requests after workspace rotation. A mismatched value returns 409 with X-EyesOnIt-Workspace-Changed: 1. Bootstrap with getCurrentPrincipal; never replay a mutation automatically after changing context. Bearer clients do not use this header.
X-CSRF-Token header No string Required for unsafe requests authenticated by CookieSession; ignored for bearer clients. minimum length 32. maximum length 256

Required.

application/json — ReplaceStreamBody.

Field Type Required Description and constraints
name string Yes minimum length 1. maximum length 128
location string or null No
description string or null No
externalId string or null No
tags object No Shared integration metadata. At most 32 public entries; keys up to 64 characters and values up to 256 characters. The additional server-managed eyesonit.rtsp.routing.v1 entry may contain up to 4096 characters and must be preserved unchanged on replacement. Camera organization uses its dedicated hierarchy APIs. maximum properties 33
timeZone string or null No
targetAnalyzedFps number No greater than 0.0. maximum 120.0. default 5
enabled boolean No default true
processingResolution VideoResolutionPolicyModel No
scene StreamSceneModel No
recording LocalRecordingPolicyModel No
archiveIndexing ArchiveIndexingPolicyModel No
faceRecognition FaceRecognitionPolicyModel No
source string or null No
fileSource FileSourceBody or null No

Set the connection variables described in Get started. Replace each additional EOI_… variable with the parameter value for this request. Prepare the body file using the request schema above. This template sends the request when run.

Terminal window
curl --fail-with-body --silent --show-error \
--request PUT \
--header "Authorization: Bearer ${EOI_SERVICE_TOKEN}" \
--header "If-Match: ${EOI_IF_MATCH}" \
--header "Content-Type: application/json" \
--data-binary @request.json \
"${EOI_API_BASE_URL}/streams/${EOI_STREAMID}"

The table records responses declared by the OpenAPI contract. See Errors and status codes for the runtime error envelope and shared failures.

Status Description Media type Body
200 Successful Response application/json StreamResponse
422 Validation Error application/json HTTPValidationError

Operation identifier replaceStream. Browse Streams.

Image preview