{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/amazon-interactive-video-service/refs/heads/main/json-schema/ivs-stream-schema.json", "title": "Stream", "description": "Specifies a live video stream that has been ingested and distributed.", "type": "object", "properties": { "channelArn": { "allOf": [ { "$ref": "#/components/schemas/ChannelArn" }, { "description": "Channel ARN for the stream." } ] }, "health": { "allOf": [ { "$ref": "#/components/schemas/StreamHealth" }, { "description": "The stream\u2019s health." } ] }, "playbackUrl": { "allOf": [ { "$ref": "#/components/schemas/PlaybackURL" }, { "description": "URL of the master playlist, required by the video player to play the HLS stream." } ] }, "startTime": { "allOf": [ { "$ref": "#/components/schemas/StreamStartTime" }, { "description": "Time of the stream\u2019s start. This is an ISO 8601 timestamp; note that this is returned as a string." } ] }, "state": { "allOf": [ { "$ref": "#/components/schemas/StreamState" }, { "description": "The stream\u2019s state. Do not rely on the OFFLINE state, as the API may not return it; instead, a \"NotBroadcasting\" error will indicate that the stream is not live." } ] }, "streamId": { "allOf": [ { "$ref": "#/components/schemas/StreamId" }, { "description": "Unique identifier for a live or previously live stream in the specified channel." } ] }, "viewerCount": { "allOf": [ { "$ref": "#/components/schemas/StreamViewerCount" }, { "description": "A count of concurrent views of the stream. Typically, a new view appears in viewerCount within 15 seconds of when video playback starts and a view is removed from viewerCount within 1 minute of when video playback ends. A value of -1 indicates that the request timed out; in this case, retry." } ] } } }