Ant Media website screenshot

Ant Media

Ant Media Server is a scalable, open-source media server for ultra-low latency live streaming and WebRTC-based video applications. It supports WebRTC, RTMP, RTSP, SRT, HLS, and CMAF protocols, enabling developers to build real-time video applications with sub-second latency. Available in Community (open-source) and Enterprise editions with adaptive bitrate streaming, cloud auto-scaling, video recording, and REST API management.

1 APIs 6 Features
BroadcastingLive StreamingMediaStreamingVideoWebRTC

APIs

Ant Media Server REST API

The Ant Media Server REST API provides programmatic access to all streaming server management functions including stream management, broadcast configuration, recording control, ...

Collections

Pricing Plans

Ant Media Plans Pricing

3 plans

PLANS

Rate Limits

Ant Media Rate Limits

5 limits

RATE LIMITS

FinOps

Features

Ultra-Low Latency WebRTC Streaming

Achieve sub-500ms latency with WebRTC-based publish and play, enabling real-time interactive video applications like auctions, gaming, and telehealth.

Multi-Protocol Support

Ingest and deliver streams via RTMP, RTSP, SRT, WebRTC, HLS, CMAF, and LL-HLS, supporting a wide range of encoders and players.

Adaptive Bitrate Streaming

Automatically transcode streams to multiple bitrate/resolution ladders and deliver the optimal quality based on viewer bandwidth.

Video Recording and VoD

Record live streams to MP4 or HLS on local disk or cloud storage, creating video-on-demand assets from live broadcasts automatically.

Cluster and Auto-Scaling

Deploy Ant Media Server in horizontal cluster mode with auto-scaling on AWS, Azure, GCP, and Alibaba Cloud for high-concurrency events.

REST API Management

Full programmatic control of streams, broadcasts, conferences, and server settings via a comprehensive REST API.

Use Cases

Telehealth and Remote Consultations

Enable HIPAA-compliant real-time video consultations between patients and healthcare providers with sub-second latency.

Live E-Commerce and Auctions

Power interactive live shopping experiences and real-time bidding platforms with low-latency video and chat.

E-Learning and Virtual Classrooms

Deliver interactive live lectures, webinars, and virtual classrooms with two-way video and screen sharing.

Gaming and Esports Broadcasting

Broadcast gaming sessions and esports events with RTMP ingest from OBS and HLS/WebRTC delivery to viewers at scale.

Video Surveillance

Ingest RTSP streams from IP cameras and provide browser-based WebRTC viewing with recording and motion detection.

Semantic Vocabularies

Ant Media Context

3 classes · 14 properties

JSON-LD

JSON Structure

Ant Media Broadcast Structure

21 properties

JSON STRUCTURE

Example Payloads

Ant Media Broadcast Example

19 fields

EXAMPLE

Resources

🔗
LinkedIn
LinkedIn
🌐
Portal
Portal
🔗
Documentation
Documentation
🚀
GettingStarted
GettingStarted
💰
Pricing
Pricing
📰
Blog
Blog
👥
GitHubOrganization
GitHubOrganization
👥
GitHubRepository
GitHubRepository
💬
Support
Support
📜
TermsOfService
TermsOfService
📜
PrivacyPolicy
PrivacyPolicy
🔗
Broadcast Schema
JSONSchema
🔗
Vocabulary
Vocabulary
🔗
LlmsText
LlmsText

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Ant Media Server REST API Reference
  version: V2.0
items:
- info:
    name: Adds a third party RTMP end point to the stream
    type: http
  http:
    method: POST
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/rtmp-endpoint
    params:
    - name: id
      value: ''
      type: path
      description: Broadcast id
    - name: resolutionHeight
      value: ''
      type: query
      description: 'Resolution height of the broadcast that is wanted to send to the RTMP endpoint. '
    body:
      type: json
      data: '{}'
  docs: It supports adding after broadcast is started. Resolution can be specified to send a specific adaptive resolution.
    If an URL is already added to a stream, trying to add the same RTMP URL will return false.
- info:
    name: Remove third-party RTMP end point from the stream
    type: http
  http:
    method: DELETE
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/rtmp-endpoint
    params:
    - name: id
      value: ''
      type: path
      description: Broadcast id
    - name: endpointServiceId
      value: ''
      type: query
      description: RTMP url of the endpoint that will be stopped.
    - name: resolutionHeight
      value: ''
      type: query
      description: Resolution specifier if endpoint has been added with resolution. Only applicable if user added RTMP endpoint
        with a resolution speficier. Otherwise won't work and won't remove the endpoint.
  docs: For the stream that is broadcasting, it will stop immediately.
- info:
    name: addID3Data
    type: http
  http:
    method: POST
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:stream_id/id3
    params:
    - name: stream_id
      value: ''
      type: path
      description: the id of the stream
    body:
      type: json
      data: '{}'
  docs: Add ID3 data to HLS stream at the moment
- info:
    name: addSEIData
    type: http
  http:
    method: POST
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:stream_id/sei
    params:
    - name: stream_id
      value: ''
      type: path
      description: the id of the stream
    body:
      type: json
      data: '{}'
  docs: Add SEI data to HLS stream at the moment
- info:
    name: Add a subtrack to a main track (broadcast)
    type: http
  http:
    method: POST
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/subtrack
    params:
    - name: id
      value: ''
      type: path
      description: Broadcast id(main track)
    - name: id
      value: ''
      type: query
      description: Subtrack Stream Id
  docs: Adds a subtrack to a main track (broadcast).
- info:
    name: Delete a subtrack from a main track (broadcast)
    type: http
  http:
    method: DELETE
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/subtrack
    params:
    - name: id
      value: ''
      type: path
      description: Broadcast id(main track)
    - name: id
      value: ''
      type: query
      description: Subtrack Stream Id
  docs: Deletes a subtrack from a main track (broadcast).
- info:
    name: Add Subscriber to the requested stream
    type: http
  http:
    method: POST
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/subscribers
    params:
    - name: id
      value: ''
      type: path
      description: The id of the stream
    body:
      type: json
      data: '{}'
  docs: Adds a subscriber to the requested stream. If the subscriber's type is 'publish', they can also play the stream, which
    is critical in conferencing. If the subscriber's type is 'play', they can only play the stream. If 'b32Secret' is not
    set, it will default to the AppSettings. The length of 'b32Secret' should be a multiple of 8 and use base32 characters
    A?Z, 2?7.
- info:
    name: Removes all subscribers related to the requested stream
    type: http
  http:
    method: DELETE
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/subscribers
    params:
    - name: id
      value: ''
      type: path
      description: the id of the stream
  docs: Deletes all subscriber data associated with the specified stream including ConnectionEvents.
- info:
    name: Block specific subscriber
    type: http
  http:
    method: PUT
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/subscribers/:sid/block/:seconds/:type
    params:
    - name: id
      value: ''
      type: path
      description: the id of the stream
    - name: sid
      value: ''
      type: path
      description: the id of the subscriber
    - name: seconds
      value: ''
      type: path
      description: seconds to block the user
    - name: type
      value: ''
      type: path
      description: block type it can be 'publish', 'play' or 'publish_play'
  docs: Blocks a specific subscriber, enhancing security especially when used with TOTP streaming. The subscriber is blocked
    for a specified number of seconds from the moment this method is called.
- info:
    name: createBroadcast
    type: http
  http:
    method: POST
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/create
    params:
    - name: autoStart
      value: ''
      type: query
      description: Only effective if stream is IP Camera or Stream Source. If it's true, it starts automatically pulling stream.
        Its value is false by default
    body:
      type: json
      data: '{}'
  docs: Creates a Broadcast, IP Camera or Stream Source and returns the full broadcast object with rtmp address and other
    information. The different between Broadcast and IP Camera or Stream Source is that Broadcast is ingested by Ant Media
    ServerIP Camera or Stream Source is pulled by Ant Media Server
- info:
    name: getBroadcast
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id
    params:
    - name: id
      value: ''
      type: path
      description: id of the broadcast
  docs: Get broadcast object
- info:
    name: updateBroadcast
    type: http
  http:
    method: PUT
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id
    params:
    - name: id
      value: ''
      type: path
      description: Broadcast id
    body:
      type: json
      data: '{}'
  docs: 'Updates the Broadcast objects fields if it''s not null. The updated fields are as follows: name, description, userName,
    password, IP address, streamUrl of the broadcast. It also updates the social endpoints'
- info:
    name: Delete broadcast from data store and stop if it's broadcasting
    type: http
  http:
    method: DELETE
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id
    params:
    - name: id
      value: ''
      type: path
      description: ' Id of the broadcast'
  docs: Delete broadcast from data store and stop if it's broadcasting
- info:
    name: deleteBroadcastsBulk
    type: http
  http:
    method: DELETE
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts
    params:
    - name: ids
      value: ''
      type: query
      description: Comma-separated stream Ids
  docs: Delete multiple broadcasts from data store and stop if they are broadcasting
- info:
    name: Delete specific subscriber from data store
    type: http
  http:
    method: DELETE
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/subscribers/:sid
    params:
    - name: id
      value: ''
      type: path
      description: the id of the stream
    - name: sid
      value: ''
      type: path
      description: the id of the subscriber
  docs: Deletes a specific subscriber from the data store for the selected stream.
- info:
    name: Set stream specific recording setting
    type: http
  http:
    method: PUT
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/recording/:recording-status
    params:
    - name: id
      value: ''
      type: path
      description: the id of the stream
    - name: recording-status
      value: ''
      type: path
      description: Change recording status. If true, starts recording. If false stop recording
    - name: recordType
      value: ''
      type: query
      description: 'Record type: ''mp4'' or ''webm''. It''s optional parameter.'
    - name: resolutionHeight
      value: ''
      type: query
      description: 'Resolution height of the broadcast that is wanted to record. '
  docs: This setting overrides the general Mp4 and WebM Muxing Setting for a specific stream.
- info:
    name: Return the active live streams
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/active-live-stream-count
  docs: Retrieves the currently active live streams.
- info:
    name: getBroadcastList
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/list/:offset/:size
    params:
    - name: offset
      value: ''
      type: path
      description: This is the offset of the list, it is useful for pagination. If you want to use sort mechanism, we recommend
        using Mongo DB.
    - name: size
      value: ''
      type: path
      description: Number of items that will be fetched. If there is not enough item in the datastore, returned list size
        may less then this value
    - name: type_by
      value: ''
      type: query
      description: Type of the stream. Possible values are "liveStream", "ipCamera", "streamSource", "VoD"
    - name: sort_by
      value: ''
      type: query
      description: Field to sort. Possible values are "name", "date", "status"
    - name: order_by
      value: ''
      type: query
      description: '"asc" for Ascending, "desc" Descending order'
    - name: search
      value: ''
      type: query
      description: Search parameter, returns specific items that contains search string
  docs: Gets the broadcast list from database. It returns max 50 items at a time
- info:
    name: Get the broadcast live statistics
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/broadcast-statistics
    params:
    - name: id
      value: ''
      type: path
      description: the id of the stream
  docs: Retrieves live statistics of the broadcast, including total RTMP watcher count, total HLS watcher count, and total
    WebRTC watcher count.
- info:
    name: Get total broadcast live statistics
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/total-broadcast-statistics
  docs: Retrieves total live statistics of the broadcast, including total HLS watcher count and total WebRTC watcher count.
- info:
    name: Get IP Camera Error after connection failure
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:streamId/ip-camera-error
    params:
    - name: streamId
      value: ''
      type: path
      description: StreamId of the IP Camera Streaming.
  docs: Checks for an error after a connection failure with an IP camera. Returning true indicates an error; false indicates
    no error.
- info:
    name: 'Retrieve all subscriber statistics of the requested stream. Deprecated '
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/connection-events/:offset/:size
    params:
    - name: id
      value: ''
      type: path
      description: the id of the stream
    - name: offset
      value: ''
      type: path
      description: the starting point of the list
    - name: size
      value: ''
      type: path
      description: size of the return list (max:50 )
    - name: subscriberId
      value: ''
      type: query
      description: subscriberId to filter the connections events
  docs: Fetches comprehensive statistics for all subscribers of the specified stream.
- info:
    name: Retrieve detected objects from the stream
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/detections/:offset/:size
    params:
    - name: id
      value: ''
      type: path
      description: the id of the stream
    - name: offset
      value: ''
      type: path
      description: starting point of the list
    - name: size
      value: ''
      type: path
      description: total size of the return list
  docs: Fetches detected objects from the stream, using specified offset and size parameters.
- info:
    name: getDuration
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/duration
    params:
    - name: url
      value: ''
      type: query
      description: Url of the stream that its duration will be returned
  docs: Gets the durations of the stream url in milliseconds
- info:
    name: getJwtTokenV2
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/jwt-token
    params:
    - name: id
      value: ''
      type: path
      description: The id of the stream
    - name: expireDate
      value: ''
      type: query
      description: The expire time of the token. It's in unix timestamp seconds.
    - name: type
      value: ''
      type: query
      description: 'Type of the JWT token. It may be play or publish '
    - name: roomId
      value: ''
      type: query
      description: 'Room Id that token belongs to. It''s not mandatory '
  docs: Generates JWT token for specified stream. It's not required to let the server generate JWT. Generally JWT tokens should
    be generated on the client side.
- info:
    name: Get total number of detected objects
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/detections/count
    params:
    - name: id
      value: ''
      type: path
      description: id of the stream
  docs: Retrieves the total count of objects detected.
- info:
    name: Get the Profile List for an ONVIF IP Camera
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/ip-camera/device-profiles
    params:
    - name: id
      value: ''
      type: path
      description: The id of the IP Camera
  docs: Retrieves the profile list for an ONVIF IP camera.
- info:
    name: Get RTMP to WebRTC Path Stats
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/rtmp-to-webrtc-stats
    params:
    - name: id
      value: ''
      type: path
      description: the id of the stream
  docs: Retrieves general statistics for the RTMP to WebRTC path.
- info:
    name: Get stream information
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/stream-info
    params:
    - name: id
      value: ''
      type: path
  docs: Returns the stream information including width, height, bitrates, and video codec.
- info:
    name: getTOTP
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/subscribers/:sid/totp
    params:
    - name: id
      value: ''
      type: path
      description: The id of the stream that TOTP will be generated
    - name: sid
      value: ''
      type: path
      description: 'The id of the subscriber that TOTP will be generated '
    - name: type
      value: ''
      type: query
      description: The type of token. It's being used if subscriber is not in the database. It can be publish, play
  docs: Return TOTP for the subscriberId, streamId, type. This is a helper method. You can generate TOTP on your end.If subscriberId
    is not in the database, it generates TOTP from the secret in the AppSettings. Secret code is for the subscriberId not
    in the database secretCode = Base32.encodeAsString({secretFromSettings(publishsecret or playsecret according to the type)}
    + {subscriberId} + {streamId} + {type(publish or play)} + {Number of X to have the length multiple of 8}'+' means concatenating
    the st
- info:
    name: getTokenV2
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/token
    params:
    - name: id
      value: ''
      type: path
      description: The id of the stream
    - name: expireDate
      value: ''
      type: query
      description: The expire time of the token. It's in unix timestamp seconds
    - name: type
      value: ''
      type: query
      description: 'Type of the token. It may be play or publish '
    - name: roomId
      value: ''
      type: query
      description: 'Room Id that token belongs to. It''s not mandatory '
  docs: Generates random one-time token for specified stream
- info:
    name: Get the total number of broadcasts
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/count
  docs: Retrieves the total number of broadcasts.
- info:
    name: Get the number of broadcasts based on search criteria
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/count/:search
    params:
    - name: search
      value: ''
      type: path
      description: 'Search parameter to get the number of items including it '
  docs: Retrieves the number of broadcasts matching the specified search criteria.
- info:
    name: Get WebRTC Client Statistics
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:stream_id/webrtc-client-stats/:offset/:size
    params:
    - name: offset
      value: ''
      type: path
      description: offset of the list
    - name: size
      value: ''
      type: path
      description: Number of items that will be fetched
    - name: stream_id
      value: ''
      type: path
      description: the id of the stream
  docs: Retrieves WebRTC client statistics, including audio bitrate, video bitrate, target bitrate, video sent period, etc.
- info:
    name: Get WebRTC Low Level Receive Stats
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/webrtc-receive-low-level-stats
  docs: Retrieves general statistics for WebRTC low level receive operations.
- info:
    name: Get WebRTC Low Level Send Stats
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/webrtc-send-low-level-stats
  docs: Retrieves general statistics for WebRTC low level send operations.
- info:
    name: Import Live Streams to Stalker Portal
    type: http
  http:
    method: POST
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/import-to-stalker
  docs: Imports live streams into the Stalker Portal.
- info:
    name: 'Retrieve all subscriber statistics of the requested stream. Deprecated use connection-events method. '
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/subscriber-stats/list/:offset/:size
    params:
    - name: id
      value: ''
      type: path
      description: the id of the stream
    - name: offset
      value: ''
      type: path
      description: the starting point of the list
    - name: size
      value: ''
      type: path
      description: size of the return list (max:50 )
  docs: Fetches comprehensive statistics for all subscribers of the specified stream. Deprecated use connection-events method.
    This method is kept for backward compatibility and getting old records. New records saved and retrieved with connection-events
    method because there is a schema design causes performance issues
- info:
    name: Get all subscribers of the requested stream
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/subscribers/list/:offset/:size
    params:
    - name: id
      value: ''
      type: path
      description: the id of the stream
    - name: offset
      value: ''
      type: path
      description: the starting point of the list
    - name: size
      value: ''
      type: path
      description: size of the return list (max:50 )
  docs: It does not return subscriber-stats. Please use subscriber-stats method
- info:
    name: Get all tokens of requested stream
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/tokens/list/:offset/:size
    params:
    - name: id
      value: ''
      type: path
      description: the id of the stream
    - name: offset
      value: ''
      type: path
      description: the starting point of the list
    - name: size
      value: ''
      type: path
      description: size of the return list (max:50 )
  docs: Get all tokens of requested stream
- info:
    name: Move IP Camera
    type: http
  http:
    method: POST
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/ip-camera/move
    params:
    - name: id
      value: ''
      type: path
      description: The id of the IP Camera
    - name: valueX
      value: ''
      type: query
      description: 'Movement in X direction. If not specified, it''s assumed to be zero. Valid ranges between -1.0f and 1.0f
        for all movements '
    - name: valueY
      value: ''
      type: query
      description: 'Movement in Y direction. If not specified, it''s assumed to be zero. Valid ranges between -1.0f and 1.0f
        for all movements '
    - name: valueZ
      value: ''
      type: query
      description: 'Movement in Zoom. If not specified, it''s assumed to be zero. Valid ranges for relative and continous
        move is between -1.0f and 1.0f. For absolute move between 0.0f and 1.0f '
    - name: movement
      value: ''
      type: query
      description: Movement type. It can be absolute, relative or continuous. If not specified, it's relative
  docs: 'Supports continuous, relative, and absolute movement. By default, it''s a relative move. Movement parameters should
    be provided according to the movement type. Generally, the following values are used: For Absolute move, value X and value
    Y are between -1.0f and 1.0f. Zoom value is between 0.0f and 1.0f. For Relative move, value X, value Y, and Zoom Value
    are between -1.0f and 1.0f. For Continuous move, value X, value Y, and Zoom Value are between -1.0f and 1.0f.'
- info:
    name: Specify the next playlist item to play by index
    type: http
  http:
    method: POST
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/playlists/:id/next
    params:
    - name: id
      value: ''
      type: path
      description: The id of the playlist stream.
    - name: index
      value: ''
      type: query
      description: 'The next item to play. If it''s not specified or it''s -1, it plays next item. If it''s number, it skips
        that item in the playlist to play. The first item index is 0. '
  docs: Sets the next playlist item to be played, based on its index. This method is applicable only to playlists.
- info:
    name: Removes all tokens related with requested stream
    type: http
  http:
    method: DELETE
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/tokens
    params:
    - name: id
      value: ''
      type: path
      description: the id of the stream
  docs: Removes all tokens related with requested stream
- info:
    name: Get Discovered ONVIF IP Cameras
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/onvif-devices
  docs: Performs a discovery within the internal network to automatically retrieve information about ONVIF-enabled cameras.
- info:
    name: Send message to stream participants via Data Channel
    type: http
  http:
    method: POST
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/data
    params:
    - name: id
      value: ''
      type: path
      description: Broadcast id
    body:
      type: json
      data: '{}'
  docs: Sends a message to stream participants through the Data Channel in a WebRTC stream.
- info:
    name: Start streaming sources
    type: http
  http:
    method: POST
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/start
    params:
    - name: id
      value: ''
      type: path
      description: the id of the stream. The broadcast type should be IP Camera or Stream Source otherwise it does not work
  docs: Initiates streaming for sources such as IP Cameras, Stream Sources, and PlayLists.
- info:
    name: stopMove
    type: http
  http:
    method: POST
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/ip-camera/stop-move
    params:
    - name: id
      value: ''
      type: path
      description: the id of the IP Camera
  docs: Stop move for IP Camera
- info:
    name: Stop streaming for the active stream
    type: http
  http:
    method: POST
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/stop
    params:
    - name: id
      value: ''
      type: path
      description: the id of the broadcast.
  docs: Terminates streaming for the active stream, including both ingested (RTMP, WebRTC) and pulled stream sources (IP Cameras
    and Stream Sources).
- info:
    name: updateSeekTime
    type: http
  http:
    method: PUT
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/:id/seek-time/:seekTimeMs
    params:
    - name: id
      value: ''
      type: path
      description: Broadcast id
    - name: seekTimeMs
      value: ''
      type: path
      description: Seek time in milliseconds
  docs: Seeks the playing stream source, vod or playlist on the fly. It accepts seekTimeMs parameter in milliseconds
- info:
    name: Perform validation of token for requested stream
    type: http
  http:
    method: POST
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/broadcasts/validate-token
    body:
      type: json
      data: '{}'
  docs: If validated, success field is true, not validated success field is false
- info:
    name: Creates or update the filter
    type: http
  http:
    method: POST
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/filters/create
    body:
      type: json
      data: '{}'
  docs: Creates or update the filter
- info:
    name: Creates MCU filter for non MCU room
    type: http
  http:
    method: POST
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/filters/room-mcu-filter/:roomId
    params:
    - name: roomId
      value: ''
      type: path
      description: Room Id
  docs: Creates MCU filter for non MCU room
- info:
    name: Deletes MCU filter for non MCU room
    type: http
  http:
    method: DELETE
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/filters/room-mcu-filter/:roomId
    params:
    - name: roomId
      value: ''
      type: path
      description: Room Id
  docs: Deletes MCU filter for non MCU room
- info:
    name: Delete the filter according to the filterId
    type: http
  http:
    method: DELETE
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/filters/:id
    params:
    - name: id
      value: ''
      type: path
      description: Filter id for deleting filter
  docs: Delete the filter according to the filterId
- info:
    name: Returns the list of filters effective in the application
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/filters/list/:offset/:size
    params:
    - name: offset
      value: ''
      type: path
      description: This is the offset of the list, it is useful for pagination. If you want to use sort mechanism, we recommend
        using Mongo DB.
    - name: size
      value: ''
      type: path
      description: Number of items that will be fetched. If there is not enough item in the datastore, returned list size
        may less then this value
  docs: Returns the list of filters effective in the application
- info:
    name: Reset the default MCU filter
    type: http
  http:
    method: DELETE
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/filters/mcu-filter/:id
    params:
    - name: id
      value: ''
      type: path
      description: Filter object with the updates
  docs: Reset the default MCU filter
- info:
    name: Set a filter specific to the MCU room
    type: http
  http:
    method: PUT
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/filters/mcu-filter
    body:
      type: json
      data: '{}'
  docs: Set a filter specific to the MCU room
- info:
    name: Set the plugin type of the MCU function
    type: http
  http:
    method: PUT
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/filters/mcu-plugin-type
    params:
    - name: type
      value: ''
      type: query
      description: 'Change the plugin type for a filter: synchronous | asynchronous (default) | lastpoint'
  docs: Set the plugin type of the MCU function
- info:
    name: getSubscriberAuthenticationToken
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/push-notification/subscriber-auth-token
    params:
    - name: subscriberId
      value: ''
      type: query
    - name: timeoutSeconds
      value: ''
      type: query
- info:
    name: sendPushNotification
    type: http
  http:
    method: POST
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/push-notification/subscribers
    params:
    - name: serviceName
      value: ''
      type: query
    body:
      type: json
      data: '{}'
- info:
    name: sendPushNotification_1
    type: http
  http:
    method: POST
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/push-notification/topics/:topic
    params:
    - name: topic
      value: ''
      type: path
    - name: serviceName
      value: ''
      type: query
    body:
      type: json
      data: '{}'
- info:
    name: Returns the Ant Media Server Version
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/version
  docs: Retrieves the version information of the Ant Media Server.
- info:
    name: VoD file from database
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/vods/:id
    params:
    - name: id
      value: ''
      type: path
      description: ID of the VoD file
  docs: Retrieves a VoD file from the database by its ID.
- info:
    name: Delete specific VoD File
    type: http
  http:
    method: DELETE
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/vods/:id
    params:
    - name: id
      value: ''
      type: path
      description: ID of the VoD file
  docs: Deletes a specific VoD file from the database by its ID.
- info:
    name: Delete bulk VoD Files based on Vod Id
    type: http
  http:
    method: DELETE
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/vods
    params:
    - name: ids
      value: ''
      type: query
      description: Comma-separated IDs of the VoD files
  docs: Deletes multiple VoD files from the database by their IDs.
- info:
    name: Get the total number of VoDs
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/vods/count
  docs: Retrieves the total number of VoD files in the database.
- info:
    name: Get the partial number of VoDs depending on the searched items
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/vods/count/:search
    params:
    - name: search
      value: ''
      type: path
      description: Search parameter to get the number of items including it
  docs: Retrieves the number of VoD files that include the specified search parameter.
- info:
    name: Get the VoD list from database
    type: http
  http:
    method: GET
    url: https://test.antmedia.io:5443/Sandbox/rest/v2/vods/list/:offset/:size
    params:
    - name: offset
      value: ''
      type: path
      description: Offset of the list
    - name: size
      value: ''
      type: path
      description: Number of items that will be fetched
    - name: sort_by
      value: ''
      type: query
      description: Field to sort. Possible values are 'name', 'date'
    - name: order_by
      value: ''
      type: query
      description: '''asc'' for Ascending, ''desc'' for Descending order'
    - name: streamId
      value: ''
      type: query
      description: ID of the stream to filter the results by stream ID
    - name: search
      value: ''
      type: query
      description: Search string
  docs: Retrieves the list of VoD files from the database. It returns up to 50 items. You can use offset value to get result
    page by page.
- info:
    name: Import VoD files from a directory and make them streamable.
    type: http
  http:


# --- truncated at 32 KB (33 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/ant-media/refs/heads/main/apis.yml