Skip to main content

Notify Stream Metadata

This document defines the specification for the SYNC_STREAM_METADATA_EVENT notification type sent by the SwiftFederation platform. This notification is triggered when the metadata of a live stream is detected, or the change on the metadata of a live stream is detected, providing the details of the metadata of ingest stream.

Basic Information

  • Notification Type: SYNC_STREAM_METADATA_EVENT
  • X-Notification-from: LLS
  • Version: v1.0

Endpoint

A HTTP endpoint that can accept POST requests of LLS notifications. It should be setup by you and configured in LLS console advance. All of the following examples will use https://api.example.com/notification as the endpoint.

Request

Request Headers

This notification uses the standard headers as defined in the Notification Callbacks Specification, with the following specific values:

X-Notification-from: LLS

Request Body

This notification follows the standard request body structure as defined in the Notification Callbacks Specification, with the following specific values for common fields:

type: "SYNC_STREAM_METADATA_EVENT"

The data object contains the following fields specific to this notification type:

Field NameTypeRequiredDescription
idstringMandatoryNotification ID
domainstringMandatoryIngest domain name
appstringMandatoryApplication name
streamstringOptionalStream name
timestampstringMandatoryUTC Timestamp. Format is yyyyMMdd'T'HHmmss'Z'. E.g. 20250518T173013Z
metadatastringMandatoryMetadata of the stream. The metadata is a JSON string in the format of { "video": {VIDEO_METADATA}, "audio": [{AUDIO_METADATA}], "subtitle": [SUBTITLE_METADATA]}.
VIDEO_METADATA is JSON Object as
• width
• height
• bitrate
• frameRate
• codec
AUDIO_METADATA is an array of JSON Objects as
• channels
• bitrate
• language
• codec
SUBTITLE_METADATA is an array of JSON Objects as
• language
• codec

Example

Notification example

Request

POST https://api.example.com/notification HTTP/1.1

Content-Type: application/json
X-SFD-Notification-From: LLS
{
"id": "notif-123adb789efg",
"type": "SYNC_STREAM_METADATA_EVENT",
"version": "v1.0",
"timestamp": 1715568240000,
"data": {
"id": "123adb789efg",
"domain": "live.example.com",
"app": "LiveStreaming",
"stream": "news_feed_1",
"timestamp": "20250518T173013Z",
"metadata": {
"video": {
"width": 1920,
"height": 1080,
"bitrate": 5000000,
"frameRate": 25,
"codec": "H264"
},
"audio": [
{
"channels": 2,
"bitrate": 128000,
"language": "eng",
"codec": "AAC"
},
{
"channels": 2,
"bitrate": 128000,
"language": "chn",
"codec": "AAC"
},
],
"subtitle": [
{
"language": "chn",
"codec": "DVB_SUBTITLE"
},
]
}
}
}

Response

POST HTTP/1.1 200 OK