[**Documentation**](index.md)
***
[Documentation](packages.md) / Vonage Video
# Vonage Video SDK for Node.js
 [](https://codecov.io/gh/Vonage/vonage-server-sdk)  [](../../CODE_OF_CONDUCT.md) [][license]
This is the Vonage Video SDK for Node.js for use with [Vonage APIs](https://www.vonage.com/). To use it you will need a Vonage account. Sign up [for free at vonage.com][signup].
For full API documentation refer to [developer.vonage.com](https://developer.vonage.com/).
* [Installation](#installation)
* [Usage](#usage)
* [Promise](#promises)
* [Testing](#testing)
* [Supported APIs](#supported-apis)
## Installation
We recommend using this SDK as part of the overall [`@vonage/server-sdk` package](https://github.com/vonage/vonage-node-sdk). Please see the main package for installation.
You can also use this SDK standalone if you only need access to just the Video API.
### With NPM
```bash
npm install @vonage/video
```
### With Yarn
```bash
yarn add @vonage/video
```
## Usage
If you are using this SDK as part of the Vonage Server SDK, you can access it as the `video` property off of the client that you instantiate.
```js
const { Auth } = require('@vonage/auth');
const { Vonage } = require('@vonage/server-sdk');
const credentials = new Auth({
apiKey: API_KEY,
apiSecret: API_SECRET
});
const options = {};
const vonage = new Vonage(credentials, options);
const session = await vonage.video.createSession();
```
### Standalone
The SDK can be used standalone from the main [Vonage Server SDK for Node.js](https://github.com/vonage/vonage-node-sdk) if you only need to use the Video API. All you need to do is `require('@vonage/video')`, and use the returned object to create your own client.
```js
const { Auth } = require('@vonage/auth');
const { Video } = require('@vonage/video');
const credentials = new Auth({
applicationId: APP_ID,
privateKey: PRIVATE_KEY_PATH,
});
const options = {};
const videoClient = new Video(credentials, options);
```
Where `credentials` is any option from [`@vonage/auth`](https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/auth/README.md#options), and `options` is any option from [`@vonage/server-client`](https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/server-client/README.md#options)
## Promises
This SDK uses Promises to return data.
```js
const session = await videoClient.createSession();
```
## Testing
Run:
```bash
npm test
```
## Supported APIs
The following is a list of Vonage Video APIs and whether the SDK provides support for them:
| API | Supported? |
|---------------------------|:-----------:|
| Session Creation | ✅ |
| Signaling | ✅ |
| Force Muting | ✅ |
| Archiving | ✅ |
| SIP Interconnect | ✅ |
| Live Streaming Broadcasts | ✅ |
| Experience Composer | ✅ |
[signup]: https://dashboard.nexmo.com/sign-up?utm_source=DEV_REL&utm_medium=github&utm_campaign=node-server-sdk
[license]: _media/LICENSE.txt
## Enumerations
### ArchiveMode
Defined in: [video/lib/types/ArchiveMode.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ArchiveMode.ts#L4)
Enum representing different archive modes.
#### Enumeration Members
| Enumeration Member | Value | Description | Defined in |
| ------ | ------ | ------ | ------ |
| `ALWAYS` | `"always"` | Archive mode set to 'always', where archives are continuously recorded. | [video/lib/types/ArchiveMode.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ArchiveMode.ts#L13) |
| `MANUAL` | `"manual"` | Archive mode set to 'manual', where archives are started and stopped manually. | [video/lib/types/ArchiveMode.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ArchiveMode.ts#L8) |
***
### ArchiveOutputMode
Defined in: [video/lib/enums/ArchiveOutputMode.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/ArchiveOutputMode.ts#L4)
Enum representing different output modes for video archives.
#### Enumeration Members
| Enumeration Member | Value | Description | Defined in |
| ------ | ------ | ------ | ------ |
| `COMPOSED` | `"composed"` | Represents the composed output mode where all streams are mixed into one. | [video/lib/enums/ArchiveOutputMode.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/ArchiveOutputMode.ts#L8) |
| `INDIVIDUAL` | `"individual"` | Represents the individual output mode where each stream is recorded separately. | [video/lib/enums/ArchiveOutputMode.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/ArchiveOutputMode.ts#L13) |
***
### AudioRate
Defined in: [video/lib/enums/AudioRate.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/AudioRate.ts#L4)
Enum representing different audio sample rates.
#### Enumeration Members
| Enumeration Member | Value | Description | Defined in |
| ------ | ------ | ------ | ------ |
| `16KHZ` | `16000` | Represents an audio sample rate of 16 kHz. | [video/lib/enums/AudioRate.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/AudioRate.ts#L8) |
| `8KHZ` | `8000` | Represents an audio sample rate of 8 kHz. | [video/lib/enums/AudioRate.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/AudioRate.ts#L13) |
***
### CaptionStatus
Defined in: [video/lib/enums/CaptionStatus.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/CaptionStatus.ts#L4)
Enum representing different captioning status.
#### Enumeration Members
| Enumeration Member | Value | Description | Defined in |
| ------ | ------ | ------ | ------ |
| `FAILED` | `"failed"` | Indicates that captioning has failed. | [video/lib/enums/CaptionStatus.ts:23](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/CaptionStatus.ts#L23) |
| `PAUSED` | `"paused"` | Indicates that captioning has been paused. | [video/lib/enums/CaptionStatus.ts:18](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/CaptionStatus.ts#L18) |
| `STARTED` | `"started"` | Indicates that captioning has started. | [video/lib/enums/CaptionStatus.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/CaptionStatus.ts#L8) |
| `STOPPED` | `"stopped"` | Indicates that captioning has stopped. | [video/lib/enums/CaptionStatus.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/CaptionStatus.ts#L13) |
***
### ExperienceComposerResolution
Defined in: [video/lib/enums/ExperienceComposerResolution.ts:6](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/ExperienceComposerResolution.ts#L6)
Enum representing different resolutions for an experience composer.
#### Enumeration Members
| Enumeration Member | Value | Description | Defined in |
| ------ | ------ | ------ | ------ |
| `HD_LANDSCAPE` | `"1280x720"` | High definition landscape resolution. | [video/lib/enums/ExperienceComposerResolution.ts:20](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/ExperienceComposerResolution.ts#L20) |
| `HD_PORTRAIT` | `"720x1280"` | High definition portrait resolution. | [video/lib/enums/ExperienceComposerResolution.ts:25](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/ExperienceComposerResolution.ts#L25) |
| `SD_LANDSCAPE` | `"640x480"` | Standard definition landscape resolution. | [video/lib/enums/ExperienceComposerResolution.ts:10](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/ExperienceComposerResolution.ts#L10) |
| `SD_PORTRAIT` | `"480x640"` | Standard definition portrait resolution. | [video/lib/enums/ExperienceComposerResolution.ts:15](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/ExperienceComposerResolution.ts#L15) |
***
### LayoutType
Defined in: [video/lib/enums/LayoutType.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/LayoutType.ts#L4)
Enum representing different layout types for live streaming broadcasts.
#### Enumeration Members
| Enumeration Member | Value | Description | Defined in |
| ------ | ------ | ------ | ------ |
| `BEST_FIT` | `"bestFit"` | Automatically determine the best fit layout. | [video/lib/enums/LayoutType.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/LayoutType.ts#L8) |
| `CUSTOM` | `"custom"` | Use a custom layout for the broadcast. | [video/lib/enums/LayoutType.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/LayoutType.ts#L13) |
| `HORIZONTAL_PRESENTATION` | `"horizontalPresentation"` | Horizontal presentation layout. | [video/lib/enums/LayoutType.ts:18](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/LayoutType.ts#L18) |
| `PIP` | `"pip"` | Picture-in-picture (PIP) layout. | [video/lib/enums/LayoutType.ts:23](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/LayoutType.ts#L23) |
| `VERTICAL_PRESENTATION` | `"verticalPresentation"` | Vertical presentation layout. | [video/lib/enums/LayoutType.ts:28](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/LayoutType.ts#L28) |
***
### MediaMode
Defined in: [video/lib/enums/MediaMode.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/MediaMode.ts#L4)
Enum representing media modes for a session.
#### Enumeration Members
| Enumeration Member | Value | Description | Defined in |
| ------ | ------ | ------ | ------ |
| `RELAYED` | `"enabled"` | Relayed mode where media is enabled. | [video/lib/enums/MediaMode.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/MediaMode.ts#L13) |
| `ROUTED` | `"disabled"` | Routed mode where media is disabled. | [video/lib/enums/MediaMode.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/MediaMode.ts#L8) |
***
### Resolution
Defined in: [video/lib/enums/Resolution.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/Resolution.ts#L4)
Enum representing different video resolutions for live streaming broadcasts.
#### Enumeration Members
| Enumeration Member | Value | Description | Defined in |
| ------ | ------ | ------ | ------ |
| `FHD_LANDSCAPE` | `"1920x1080"` | Full HD landscape resolution (1920x1080 pixels). | [video/lib/enums/Resolution.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/Resolution.ts#L8) |
| `FHD_PORTRAIT` | `"1080x1920"` | Full HD portrait resolution (1080x1920 pixels). | [video/lib/enums/Resolution.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/Resolution.ts#L13) |
| `HD_LANDSCAPE` | `"1280x720"` | HD landscape resolution (1280x720 pixels). | [video/lib/enums/Resolution.ts:18](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/Resolution.ts#L18) |
| `HD_PORTRAIT` | `"720x1280"` | HD portrait resolution (720x1280 pixels). | [video/lib/enums/Resolution.ts:23](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/Resolution.ts#L23) |
| `SD_LANDSCAPE` | `"640x480"` | Standard definition landscape resolution (640x480 pixels). | [video/lib/enums/Resolution.ts:28](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/Resolution.ts#L28) |
| `SD_PORTRAIT` | `"480x640"` | Standard definition portrait resolution (480x640 pixels). | [video/lib/enums/Resolution.ts:33](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/Resolution.ts#L33) |
***
### StreamMode
Defined in: [video/lib/enums/StreamMode.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/StreamMode.ts#L4)
Enum representing different stream modes for live streaming broadcasts.
#### Enumeration Members
| Enumeration Member | Value | Description | Defined in |
| ------ | ------ | ------ | ------ |
| `AUTO` | `"auto"` | Streams are selected automatically based on session rules. | [video/lib/enums/StreamMode.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/StreamMode.ts#L8) |
| `MANUAL` | `"manual"` | Streams are manually selected for inclusion in the broadcast. | [video/lib/enums/StreamMode.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/enums/StreamMode.ts#L13) |
## Classes
### Video
Defined in: [video/lib/video.ts:84](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L84)
Video Client for managing and interacting with video-related operations in your application.
This client allows you to control sessions, streams, archives, broadcasts, and various video-related features.
Usage:
- Create and manage video sessions with customizable settings.
- Control video streams, including muting, adding, and removing streams.
- Initiate SIP calls and establish WebSockets for real-time communication.
- Enable and disable captions for improved accessibility.
- Start, stop, and manage video archives and broadcasts.
- Render experiences and access detailed information about streams and archives.
- Generate client tokens for secure session connections.
- Perform various video-related operations with ease.
#### Remarks
The Video Client is designed to simplify video management tasks within your application.
It provides a comprehensive set of methods and options to configure and control video interactions seamlessly.
#### Examples
Create a standalone Video client
```ts
import { Video } from '@vonage/video';
const videoClient = new Video({
apiKey: VONAGE_API_KEY,
apiSecret: VONAGE_API_SECRET
});
```
Create an Video client from the Vonage client
```ts
import { Vonage } from '@vonage/server-client';
const vonage = new Vonage({
apiKey: VONAGE_API_KEY,
apiSecret: VONAGE_API_SECRET
});
const videoClient = vonage.video;
```
#### Extends
- [`Client`](Vonage-Server-Client.md#client)
#### Constructors
##### Constructor
```ts
new Video(credentials, options?): Video;
```
Defined in: server-client/dist/lib/client.d.ts:35
Creates a new instance of the Client.
###### Parameters
###### credentials
The authentication credentials or an authentication instance.
[`AuthParams`](Vonage-Auth.md#authparams) | [`AuthInterface`](Vonage-Auth.md#authinterface)
###### options?
[`ConfigParams`](Vonage-Server-Client.md#configparams)
Optional configuration settings for the client.
###### Returns
[`Video`](#video)
###### Inherited from
[`Client`](Vonage-Server-Client.md#client).[`constructor`](Vonage-Server-Client.md#client#constructor)
#### Properties
##### auth
```ts
protected auth: AuthInterface;
```
Defined in: server-client/dist/lib/client.d.ts:24
The authentication instance responsible for generating authentication headers and query parameters.
###### Inherited from
[`Client`](Vonage-Server-Client.md#client).[`auth`](Vonage-Server-Client.md#client#auth)
##### authType
```ts
protected authType: AuthenticationType = AuthenticationType.JWT;
```
Defined in: [video/lib/video.ts:85](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L85)
The type of authentication used for the client's requests.
###### Overrides
[`Client`](Vonage-Server-Client.md#client).[`authType`](Vonage-Server-Client.md#client#authtype)
##### config
```ts
protected config: ConfigParams;
```
Defined in: server-client/dist/lib/client.d.ts:28
Configuration settings for the client, including default hosts for various services and other request settings.
###### Inherited from
[`Client`](Vonage-Server-Client.md#client).[`config`](Vonage-Server-Client.md#client#config)
##### transformers
```ts
static transformers: object;
```
Defined in: server-client/dist/lib/client.d.ts:11
Static property containing utility transformers.
###### camelCaseObjectKeys
```ts
camelCaseObjectKeys: PartialTransformFunction;
```
###### kebabCaseObjectKeys
```ts
kebabCaseObjectKeys: PartialTransformFunction;
```
###### omit()
```ts
omit: (keys, obj) => TransformedObject;
```
###### Parameters
###### keys
`string`[]
###### obj
[`ObjectToTransform`](Vonage-Server-Client.md#objecttotransform)
###### Returns
[`TransformedObject`](Vonage-Server-Client.md#transformedobject)
###### snakeCaseObjectKeys
```ts
snakeCaseObjectKeys: PartialTransformFunction;
```
###### Inherited from
[`Client`](Vonage-Server-Client.md#client).[`transformers`](Vonage-Server-Client.md#client#transformers)
#### Methods
##### addArchiveStream()
```ts
addArchiveStream(
archiveId,
streamId,
audio?,
video?): Promise;
```
Defined in: [video/lib/video.ts:102](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L102)
Adds a stream to an existing archive, allowing you to include additional streams in the archive recording.
###### Parameters
###### archiveId
`string`
The ID of the archive to which you want to add a stream.
###### streamId
`string`
The ID of the stream you want to add to the archive.
###### audio?
`boolean` = `true`
Whether to include audio from the added stream (default: true).
###### video?
`boolean` = `true`
Whether to include video from the added stream (default: true).
###### Returns
`Promise`\<`void`\>
A promise that resolves when the stream has been successfully added to the archive.
###### Throws
If an error occurs while adding the stream to the archive.
###### Example
```ts
await videoClient.addArchiveStream(ARCHIVE_ID, STREAM_ID);
```
##### addAuthenticationToRequest()
```ts
addAuthenticationToRequest(request): Promise;
```
Defined in: server-client/dist/lib/client.d.ts:43
Adds the appropriate authentication headers or parameters to the request based on the authentication type.
###### Parameters
###### request
[`VetchOptions`](Vonage-Vetch.md#vetchoptions)
The request options to which authentication needs to be added.
###### Returns
`Promise`\<[`VetchOptions`](Vonage-Vetch.md#vetchoptions)\>
- The request options with the added authentication.
###### Inherited from
[`Client`](Vonage-Server-Client.md#client).[`addAuthenticationToRequest`](Vonage-Server-Client.md#client#addauthenticationtorequest)
##### addBasicAuthToRequest()
```ts
protected addBasicAuthToRequest(request): Promise;
```
Defined in: server-client/dist/lib/client.d.ts:71
Adds basic authentication headers to the request.
###### Parameters
###### request
[`VetchOptions`](Vonage-Vetch.md#vetchoptions)
The request options to which authentication needs to be added.
###### Returns
`Promise`\<[`VetchOptions`](Vonage-Vetch.md#vetchoptions)\>
- The request options with the added authentication.
###### Inherited from
[`Client`](Vonage-Server-Client.md#client).[`addBasicAuthToRequest`](Vonage-Server-Client.md#client#addbasicauthtorequest)
##### addJWTToRequest()
```ts
protected addJWTToRequest(request): Promise;
```
Defined in: server-client/dist/lib/client.d.ts:64
Adds a JWT to the request.
###### Parameters
###### request
[`VetchOptions`](Vonage-Vetch.md#vetchoptions)
The request options to which authentication needs to be added.
###### Returns
`Promise`\<[`VetchOptions`](Vonage-Vetch.md#vetchoptions)\>
- The request options with the added authentication.
###### Inherited from
[`Client`](Vonage-Server-Client.md#client).[`addJWTToRequest`](Vonage-Server-Client.md#client#addjwttorequest)
##### addQueryKeySecretToRequest()
```ts
protected addQueryKeySecretToRequest(request): Promise;
```
Defined in: server-client/dist/lib/client.d.ts:57
Adds API key and secret to the request.
###### Parameters
###### request
[`VetchOptions`](Vonage-Vetch.md#vetchoptions)
The request options to which authentication needs to be added.
###### Returns
`Promise`\<[`VetchOptions`](Vonage-Vetch.md#vetchoptions)\>
- The request options with the added authentication.
###### Inherited from
[`Client`](Vonage-Server-Client.md#client).[`addQueryKeySecretToRequest`](Vonage-Server-Client.md#client#addquerykeysecrettorequest)
##### addQueryKeySecretToRequestBody()
```ts
protected addQueryKeySecretToRequestBody(request): Promise;
```
Defined in: server-client/dist/lib/client.d.ts:50
Adds API key and secret to the request body.
###### Parameters
###### request
[`VetchOptions`](Vonage-Vetch.md#vetchoptions)
The request options to which authentication needs to be added.
###### Returns
`Promise`\<[`VetchOptions`](Vonage-Vetch.md#vetchoptions)\>
- The request options with the added authentication.
###### Inherited from
[`Client`](Vonage-Server-Client.md#client).[`addQueryKeySecretToRequestBody`](Vonage-Server-Client.md#client#addquerykeysecrettorequestbody)
##### addStreamToBroadcast()
```ts
addStreamToBroadcast(broadcastId, streamId): Promise;
```
Defined in: [video/lib/video.ts:133](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L133)
Adds a stream to an existing broadcast, allowing you to include additional streams in the live broadcast.
###### Parameters
###### broadcastId
`string`
The ID of the broadcast to which you want to add a stream.
###### streamId
`string`
The ID of the stream you want to add to the broadcast.
###### Returns
`Promise`\<`void`\>
A promise that resolves when the stream has been successfully added to the broadcast.
###### Throws
If an error occurs while adding the stream to the broadcast.
###### Example
```ts
await videoClient.addStreamToBroadcast(BROADCAST_ID, STREAM_ID);
```
##### connectToWebsocket()
```ts
connectToWebsocket(
sessionId,
clientToken,
config): Promise;
```
Defined in: [video/lib/video.ts:162](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L162)
Connects to a WebSocket for a specified session using the provided client token and WebSocket configuration.
###### Parameters
###### sessionId
`string`
The ID of the session to which you want to connect via WebSocket.
###### clientToken
`string`
The client token generated for authentication.
###### config
[`WebSocketConfig`](#websocketconfig)
The WebSocket configuration specifying the URI and optional parameters.
###### Returns
`Promise`\<[`WebSocketConnectResponse`](#websocketconnectresponse)\>
A promise that resolves with WebSocket connection details upon successful connection.
###### Throws
If an error occurs during the WebSocket connection process.
###### Example
```ts
const result = await videoClient.connectToWebsocket(
SESSION_ID,
CLIENT_TOKEN,
{
uri: 'wss://example.com',
},
)
console.log(result.id);
```
##### createSession()
```ts
createSession(sessionOptions?): Promise;
```
Defined in: [video/lib/video.ts:228](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L228)
Creates a new session with the specified options.
###### Parameters
###### sessionOptions?
Optional session configuration options.
###### archiveMode?
[`ArchiveMode`](#archivemode)
The archive mode for the session.
###### location?
`string`
The location for the session.
###### mediaMode?
[`MediaMode`](#mediamode)
The media mode for the session.
###### Returns
`Promise`\<[`Session`](#session)\>
A promise that resolves with details of the newly created session.
###### Throws
If an error occurs during the session creation process.
###### Examples
Create a session with default options
```ts
const session = await videoClient.createSession({});
console.log(session.sessionId);
```
Create a session with archive mode set to manual
```ts
import { ArchiveMode } from '@vonage/video';
const session = await videoClient.createSession({
archiveMode: ArchiveMode.MANUAL,
});
console.log(session.sessionId);
```
Create a session with location set to a specific region
```ts
const session = await videoClient.createSession({
location: 'eu',
});
console.log(session.sessionId);
```
Create a session with media mode set to routed
```ts
import { MediaMode } from '@vonage/video';
const session = await videoClient.createSession({
mediaMode: MediaMode.ROUTED,
});
console.log(session.sessionId);
```
##### deleteArchive()
```ts
deleteArchive(archiveId): Promise;
```
Defined in: [video/lib/video.ts:264](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L264)
Deletes an archive with the specified archive ID.
###### Parameters
###### archiveId
`string`
The ID of the archive to delete.
###### Returns
`Promise`\<`void`\>
A promise that resolves when the archive is successfully deleted.
###### Throws
If an error occurs while deleting the archive or if the archive with the given ID does not exist.
###### Example
```ts
await videoClient.deleteArchive(ARCHIVE_ID);
```
##### disableCaptions()
```ts
disableCaptions(captionId): Promise;
```
Defined in: [video/lib/video.ts:282](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L282)
Disables captions for a specific caption ID.
###### Parameters
###### captionId
`string`
The ID of the caption to disable.
###### Returns
`Promise`\<`void`\>
A promise that resolves when the captions are successfully disabled.
###### Throws
If an error occurs while disabling captions or if the caption with the given ID does not exist.
###### Example
```ts
await videoClient.disableCaptions(CAPTION_ID);
```
##### disableForceMute()
```ts
disableForceMute(sessionId, excludedStreamIds): Promise;
```
Defined in: [video/lib/video.ts:302](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L302)
Disables force mute for a session, allowing audio for all streams.
###### Parameters
###### sessionId
`string`
The ID of the session for which to disable force mute.
###### excludedStreamIds
`string`[] = `[]`
An optional array of stream IDs to exclude from the force mute operation.
###### Returns
`Promise`\<[`ProjectDetailsResponse`](#projectdetailsresponse)\>
A promise that resolves when the force mute is successfully disabled for the session.
###### Throws
If an error occurs while disabling force mute or if the session with the given ID does not exist.
###### Example
```ts
const forceMute = await videoClient.disableForceMute(SESSION_ID);
console.log(forceMute.status);
```
##### disconnectClient()
```ts
disconnectClient(sessionId, connectionId): Promise;
```
Defined in: [video/lib/video.ts:322](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L322)
Disconnects a client from a session.
###### Parameters
###### sessionId
`string`
The ID of the session from which to disconnect the client.
###### connectionId
`string`
The ID of the client's connection to disconnect.
###### Returns
`Promise`\<`void`\>
A promise that resolves when the client is successfully disconnected from the session.
###### Throws
If an error occurs while disconnecting the client or if the session or connection with the given IDs do not exist.
###### Example
```ts
await videoClient.disconnectClient(SESSION_ID, CONNECTION_ID);
```
##### disconnectWebsocket()
```ts
disconnectWebsocket(callId): Promise;
```
Defined in: [video/lib/video.ts:343](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L343)
Disconnects a WebSocket connection associated with a call or session.
###### Parameters
###### callId
`string`
The ID of the call or session to which the WebSocket connection is associated.
###### Returns
`Promise`\<`void`\>
A promise that resolves when the WebSocket connection is successfully disconnected.
###### Throws
If an error occurs while disconnecting the WebSocket connection or if the call or session with the given ID does not exist.
###### Example
```ts
await videoClient.disconnectWebsocket(CALL_ID);
```
##### enableCaptions()
```ts
enableCaptions(
sessionId,
clientToken,
captionOptions?): Promise;
```
Defined in: [video/lib/video.ts:364](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L364)
Enables captions for a session using the specified client token and caption options.
###### Parameters
###### sessionId
`string`
The ID of the session to enable captions for.
###### clientToken
`string`
The client token associated with the session, used for authentication.
###### captionOptions?
[`CaptionOptions`](#captionoptions) = `{}`
Optional caption options to configure caption behavior.
###### Returns
`Promise`\<[`EnableCaptionResponse`](#enablecaptionresponse)\>
A promise that resolves with an `EnableCaptionResponse` containing information about the enabled captions.
###### Throws
If an error occurs while enabling captions or if the session with the given ID does not exist.
###### Example
```ts
const result = await videoClient.enableCaptions(SESSION_ID, CLIENT_TOKEN);
console.log(result.captionId);
```
##### forceMuteAll()
```ts
forceMuteAll(sessionId, excludedStreamIds?): Promise;
```
Defined in: [video/lib/video.ts:395](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L395)
Forces muting of all streams in a session, except those specified in the `excludedStreamIds` array.
###### Parameters
###### sessionId
`string`
The ID of the session in which to force mute streams.
###### excludedStreamIds?
`string`[] = `[]`
An optional array of stream IDs to exclude from muting.
###### Returns
`Promise`\<[`ProjectDetailsResponse`](#projectdetailsresponse)\>
A promise that resolves with a `ProjectDetailsResponse` containing updated session details after muting.
###### Throws
If an error occurs while muting the streams or if the session with the given ID does not exist.
###### Example
```ts
const forceMute = await videoClient.forceMuteAll(SESSION_ID);
console.log(forceMute.status);
```
##### generateClientToken()
```ts
generateClientToken(sessionId, tokenOptions?): string;
```
Defined in: [video/lib/video.ts:415](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L415)
Generates a client token for connecting to a session with the specified options.
###### Parameters
###### sessionId
`string`
The ID of the session to generate the client token for.
###### tokenOptions?
[`ClientTokenOptions`](#clienttokenoptions)
Optional token options including role, data, and expiration time.
###### Returns
`string`
A client token that can be used for authentication when connecting to a session.
###### Example
```ts
const token = videoClient.generateClientToken(SESSION_ID);
console.log(`The token is ${token}`);
```
##### getArchive()
```ts
getArchive(archiveId): Promise;
```
Defined in: [video/lib/video.ts:464](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L464)
Retrieves information about a specific archive by its ID.
###### Parameters
###### archiveId
`string`
The ID of the archive to retrieve.
###### Returns
`Promise`\<[`SingleArchiveResponse`](#singlearchiveresponse)\>
A promise that resolves to the details of the requested archive.
###### Example
```ts
const archive = await videoClient.getArchive(ARCHIVE_ID);
console.log(archive.createdAt);
```
##### getBroadcast()
```ts
getBroadcast(broadcastId): Promise;
```
Defined in: [video/lib/video.ts:482](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L482)
Retrieves information about a specific broadcast by its ID.
###### Parameters
###### broadcastId
`string`
The ID of the broadcast to retrieve.
###### Returns
`Promise`\<[`BroadcastDetailsResponse`](#broadcastdetailsresponse)\>
A promise that resolves to the details of the requested broadcast.
```ts
const broadcast = await videoClient.getBroadcast(BROADCAST_ID);
console.log(broadcast.createdAt);
```
##### getCaptionStatus()
```ts
getCaptionStatus(captionId): Promise;
```
Defined in: [video/lib/video.ts:503](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L503)
Retrieves the status of a caption by its ID.
###### Parameters
###### captionId
`string`
The ID of the caption to retrieve the status for.
###### Returns
`Promise`\<[`CaptionStatusResponse`](#captionstatusresponse)\>
A promise that resolves to the status of the requested caption.
###### Example
```ts
const captionStatus = await videoClient.getCaptionStatus(CAPTION_ID);
console.log(captionStatus.status);
```
##### getConfig()
```ts
getConfig(): ConfigParams;
```
Defined in: server-client/dist/lib/client.d.ts:36
###### Returns
[`ConfigParams`](Vonage-Server-Client.md#configparams)
###### Inherited from
[`Client`](Vonage-Server-Client.md#client).[`getConfig`](Vonage-Server-Client.md#client#getconfig)
##### getExperienceComposerRender()
```ts
getExperienceComposerRender(renderId): Promise;
```
Defined in: [video/lib/video.ts:524](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L524)
Retrieves the details of an Experience Composer render by its ID.
###### Parameters
###### renderId
`string`
The ID of the Experience Composer render to retrieve.
###### Returns
`Promise`\<[`ExperienceComposerResponse`](#experiencecomposerresponse)\>
A promise that resolves to the details of the requested Experience Composer render.
###### Example
```ts
const render = await videoClient.getExperienceComposerRender(RENDER_ID);
console.log(render.createdAt);
```
##### getStreamInfo()
```ts
getStreamInfo(sessionId, streamId?): Promise<
| SingleStreamLayoutResponse
| MultiStreamLayoutResponse>;
```
Defined in: [video/lib/video.ts:553](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L553)
Retrieves information about one or more streams in a session.
###### Parameters
###### sessionId
`string`
The ID of the session to retrieve stream information from.
###### streamId?
`string`
Optional. The ID of a specific stream to retrieve information for.
###### Returns
`Promise`\<
\| [`SingleStreamLayoutResponse`](#singlestreamlayoutresponse)
\| [`MultiStreamLayoutResponse`](#multistreamlayoutresponse)\>
A promise that resolves to stream information. If a specific `streamId` is provided, it resolves to a single stream's information (SingleStreamLayoutResponse), otherwise, it resolves to multiple streams' information (MultiStreamLayoutResponse).
###### Example
```ts
const streamInfo = await videoClient.getStreamInfo(SESSION_ID);
if (streamInfo.items) {
streamInfo.items.forEach((item) => {
console.log(item.id);
});
} else {
console.log(streamInfo.id);
}
```
##### intiateSIPCall()
```ts
intiateSIPCall(sessionId, options): Promise;
```
Defined in: [video/lib/video.ts:611](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L611)
Initiates a SIP call within a session.
###### Parameters
###### sessionId
`string`
The ID of the session in which to initiate the SIP call.
###### options
[`SIPCallOptions`](#sipcalloptions)
The options for initiating the SIP call.
###### Returns
`Promise`\<[`SIPCallResponse`](#sipcallresponse)\>
A promise that resolves to the SIP call response, including the call ID and other details.
###### Examples
Start a SIP call with default options
```ts
const sipCall = await videoClient.intiateSIPCall(SESSION_ID);
console.log(sipCall.id);
```
Start a SIP call with custom options
```ts
const sipCall = await videoClient.intiateSIPCall(
SESSION_ID,
{
uri: 'sip://example.com',
}
);
console.log(sipCall.id);
```
##### listExperienceComposerRenders()
```ts
listExperienceComposerRenders(filter): Promise;
```
Defined in: [video/lib/video.ts:644](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L644)
Lists Experience Composer renders based on the specified filter criteria.
###### Parameters
###### filter
[`ExperienceComposerListFilter`](#experiencecomposerlistfilter)
An optional filter to apply when listing Experience Composer renders.
###### Returns
`Promise`\<[`MultiExperienceComposerResponse`](#multiexperiencecomposerresponse)\>
A promise that resolves to a list of Experience Composer renders matching the filter criteria.
###### Example
```ts
const renders = await videoClient.listExperienceComposerRenders();
for (const render of renders.items) {
console.log(render.id);
}
```
##### muteAllStreams()
```ts
protected muteAllStreams(
sessionId,
active,
excludedStreamIds): Promise;
```
Defined in: [video/lib/video.ts:668](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L668)
Mutes or unmutes all streams in a session, optionally excluding specific stream IDs from muting.
###### Parameters
###### sessionId
`string`
The ID of the session in which to mute or unmute streams.
###### active
`boolean`
`true` to mute all streams, `false` to unmute all streams.
###### excludedStreamIds
`string`[] = `[]`
An optional array of stream IDs to exclude from muting/unmuting.
###### Returns
`Promise`\<[`ProjectDetailsResponse`](#projectdetailsresponse)\>
A promise that resolves to the updated session details.
###### Example
```ts
const forceMute = await videoClient.muteAll(SESSION_ID);
console.log(forceMute.status);
```
##### muteStream()
```ts
muteStream(sessionId, streamId): Promise;
```
Defined in: [video/lib/video.ts:696](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L696)
Mutes or unmutes a specific stream in a session.
###### Parameters
###### sessionId
`string`
The ID of the session containing the stream.
###### streamId
`string`
The ID of the stream to mute or unmute.
###### Returns
`Promise`\<[`ProjectDetailsResponse`](#projectdetailsresponse)\>
A promise that resolves to the updated session details.
###### Example
```ts
const forceMute = await videoClient.muteStream(SESSION_ID, STREAM_ID);
console.log(forceMute.status);
```
##### parseResponse()
```ts
protected parseResponse(request, response): Promise>;
```
Defined in: server-client/dist/lib/client.d.ts:168
Parses the response based on its content type.
###### Type Parameters
###### T
`T`
The expected type of the parsed response data.
###### Parameters
###### request
[`VetchOptions`](Vonage-Vetch.md#vetchoptions)
The request options.
###### response
`Response`
The raw response from the request.
###### Returns
`Promise`\<[`VetchResponse`](Vonage-Vetch.md#vetchresponse)\<`T`\>\>
- The parsed response.
###### Inherited from
[`Client`](Vonage-Server-Client.md#client).[`parseResponse`](Vonage-Server-Client.md#client#parseresponse)
##### playDTMF()
```ts
playDTMF(
sessionId,
digits,
connectionId?): Promise;
```
Defined in: [video/lib/video.ts:719](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L719)
Sends DTMF (Dual-Tone Multi-Frequency) tones to a specific session or connection.
###### Parameters
###### sessionId
`string`
The ID of the session to send DTMF tones to.
###### digits
`string`
The DTMF tones to play.
###### connectionId?
`string`
Optional. The ID of the connection within the session to send DTMF tones to.
###### Returns
`Promise`\<`void`\>
A promise that resolves when the DTMF tones have been played.
###### Example
```ts
await videoClient.playDTMF(SESSION_ID, '1234');
```
##### prepareBody()
```ts
protected prepareBody(request): undefined | string;
```
Defined in: server-client/dist/lib/client.d.ts:158
Prepares the body for the request based on the content type.
###### Parameters
###### request
[`VetchOptions`](Vonage-Vetch.md#vetchoptions)
The request options.
###### Returns
`undefined` \| `string`
- The prepared request body as a string or undefined.
###### Inherited from
[`Client`](Vonage-Server-Client.md#client).[`prepareBody`](Vonage-Server-Client.md#client#preparebody)
##### prepareRequest()
```ts
protected prepareRequest(request): Promise;
```
Defined in: server-client/dist/lib/client.d.ts:151
Prepares the request with necessary headers, authentication, and query parameters.
###### Parameters
###### request
[`VetchOptions`](Vonage-Vetch.md#vetchoptions)
The initial request options.
###### Returns
`Promise`\<[`VetchOptions`](Vonage-Vetch.md#vetchoptions)\>
- The modified request options.
###### Inherited from
[`Client`](Vonage-Server-Client.md#client).[`prepareRequest`](Vonage-Server-Client.md#client#preparerequest)
##### removeArchiveStream()
```ts
removeArchiveStream(archiveId, streamId): Promise;
```
Defined in: [video/lib/video.ts:744](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L744)
Removes a stream from an archive.
###### Parameters
###### archiveId
`string`
The ID of the archive from which to remove the stream.
###### streamId
`string`
The ID of the stream to remove from the archive.
###### Returns
`Promise`\<`void`\>
A promise that resolves when the stream has been successfully removed from the archive.
###### Example
```ts
await videoClient.removeArchiveStream(ARCHIVE_ID, STREAM_ID);
```
##### removeStreamFromBroadcast()
```ts
removeStreamFromBroadcast(broadcastId, streamId): Promise;
```
Defined in: [video/lib/video.ts:766](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L766)
Removes a stream from a broadcast.
###### Parameters
###### broadcastId
`string`
The ID of the broadcast from which to remove the stream.
###### streamId
`string`
The ID of the stream to remove from the broadcast.
###### Returns
`Promise`\<`void`\>
A promise that resolves when the stream has been successfully removed from the broadcast.
###### Example
```ts
await videoClient.removeStreamFromBroadcast(BROADCAST_ID, STREAM_ID);
```
##### searchArchives()
```ts
searchArchives(filter?): Promise;
```
Defined in: [video/lib/video.ts:798](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L798)
Searches for archives based on the specified filter criteria.
###### Parameters
###### filter?
[`ArchiveSearchFilter`](#archivesearchfilter)
Optional filter criteria to narrow down the search.
###### Returns
`Promise`\<[`MultiArchiveResponse`](#multiarchiveresponse)\>
A promise that resolves with the search results, including multiple archive items.
###### Examples
```ts
const archives = await videoClient.searchArchives();
for (const archive of archives.items) {
console.log(archive.id);
}
```
Search for archives for a session
```ts
const archives = await videoClient.searchArchives({
sessionId: SESSION_ID,
});
for (const archive of archives.items) {
console.log(archive.id);
}
```
##### searchBroadcasts()
```ts
searchBroadcasts(filter?): Promise;
```
Defined in: [video/lib/video.ts:833](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L833)
Searches for broadcasts based on the specified filter criteria.
###### Parameters
###### filter?
[`BroadcastSearchFilter`](#broadcastsearchfilter)
Optional filter criteria to narrow down the search.
###### Returns
`Promise`\<[`MultiBroadcastResponse`](#multibroadcastresponse)\>
A promise that resolves with the search results, including multiple broadcast items.
###### Examples
```ts
const broadcasts = await videoClient.searchBroadcasts();
for (const broadcast of broadcasts.items) {
console.log(broadcast.id);
}
```
Get braodcasts for a session
```ts
const broadcasts = await videoClient.searchBroadcasts({
sessionId: SESSION_ID,
})
for (const broadcast of broadcasts.items) {
console.log(broadcast.id);
}
```
##### sendDeleteRequest()
```ts
sendDeleteRequest(url): Promise>;
```
Defined in: server-client/dist/lib/client.d.ts:78
Sends a DELETE request to the specified URL.
###### Type Parameters
###### T
`T`
###### Parameters
###### url
`string`
The URL endpoint for the DELETE request.
###### Returns
`Promise`\<[`VetchResponse`](Vonage-Vetch.md#vetchresponse)\<`T`\>\>
- The response from the DELETE request.
###### Inherited from
[`Client`](Vonage-Server-Client.md#client).[`sendDeleteRequest`](Vonage-Server-Client.md#client#senddeleterequest)
##### sendFormSubmitRequest()
```ts
sendFormSubmitRequest(url, payload?): Promise>;
```
Defined in: server-client/dist/lib/client.d.ts:86
Sends a POST request with form data to the specified URL.
###### Type Parameters
###### T
`T`
###### Parameters
###### url
`string`
The URL endpoint for the POST request.
###### payload?
`Record`\<`string`, `undefined` \| `string`\>
Optional payload containing form data to send with the POST request.
###### Returns
`Promise`\<[`VetchResponse`](Vonage-Vetch.md#vetchresponse)\<`T`\>\>
- The response from the POST request.
###### Inherited from
[`Client`](Vonage-Server-Client.md#client).[`sendFormSubmitRequest`](Vonage-Server-Client.md#client#sendformsubmitrequest)
##### sendGetRequest()
```ts
sendGetRequest(url, queryParams?): Promise>;
```
Defined in: server-client/dist/lib/client.d.ts:94
Sends a GET request to the specified URL with optional query parameters.
###### Type Parameters
###### T
`T`
###### Parameters
###### url
`string`
The URL endpoint for the GET request.
###### queryParams?
Optional query parameters to append to the URL. These should be compatible with Node's URLSearchParams.
###### Returns
`Promise`\<[`VetchResponse`](Vonage-Vetch.md#vetchresponse)\<`T`\>\>
- The response from the GET request.
###### Inherited from
[`Client`](Vonage-Server-Client.md#client).[`sendGetRequest`](Vonage-Server-Client.md#client#sendgetrequest)
##### sendPatchRequest()
```ts
sendPatchRequest(url, payload?): Promise>;
```
Defined in: server-client/dist/lib/client.d.ts:104
Sends a PATCH request to the specified URL with an optional payload.
###### Type Parameters
###### T
`T`
###### Parameters
###### url
`string`
The URL endpoint for the PATCH request.
###### payload?
Optional payload to be sent as the body of the PATCH request.
###### Returns
`Promise`\<[`VetchResponse`](Vonage-Vetch.md#vetchresponse)\<`T`\>\>
- The response from the PATCH request.
###### Inherited from
[`Client`](Vonage-Server-Client.md#client).[`sendPatchRequest`](Vonage-Server-Client.md#client#sendpatchrequest)
##### sendPostRequest()
```ts
sendPostRequest(url, payload?): Promise>;
```
Defined in: server-client/dist/lib/client.d.ts:114
Sends a POST request to the specified URL with an optional payload.
###### Type Parameters
###### T
`T`
###### Parameters
###### url
`string`
The URL endpoint for the POST request.
###### payload?
Optional payload to be sent as the body of the POST request.
###### Returns
`Promise`\<[`VetchResponse`](Vonage-Vetch.md#vetchresponse)\<`T`\>\>
- The response from the POST request.
###### Inherited from
[`Client`](Vonage-Server-Client.md#client).[`sendPostRequest`](Vonage-Server-Client.md#client#sendpostrequest)
##### sendPutRequest()
```ts
sendPutRequest(url, payload?): Promise>;
```
Defined in: server-client/dist/lib/client.d.ts:124
Sends a PUT request to the specified URL with an optional payload.
###### Type Parameters
###### T
`T`
###### Parameters
###### url
`string`
The URL endpoint for the PUT request.
###### payload?
Optional payload to be sent as the body of the PUT request.
###### Returns
`Promise`\<[`VetchResponse`](Vonage-Vetch.md#vetchresponse)\<`T`\>\>
- The response from the PUT request.
###### Inherited from
[`Client`](Vonage-Server-Client.md#client).[`sendPutRequest`](Vonage-Server-Client.md#client#sendputrequest)
##### sendRequest()
```ts
sendRequest(request): Promise>;
```
Defined in: server-client/dist/lib/client.d.ts:144
Sends a request adding necessary headers, handling authentication, and parsing the response.
###### Type Parameters
###### T
`T`
###### Parameters
###### request
[`VetchOptions`](Vonage-Vetch.md#vetchoptions)
The options defining the request, including URL, method, headers, and data.
###### Returns
`Promise`\<[`VetchResponse`](Vonage-Vetch.md#vetchresponse)\<`T`\>\>
- The parsed response from the request.
###### Inherited from
[`Client`](Vonage-Server-Client.md#client).[`sendRequest`](Vonage-Server-Client.md#client#sendrequest)
##### sendRequestWithData()
```ts
sendRequestWithData(
method,
url,
payload?): Promise>;
```
Defined in: server-client/dist/lib/client.d.ts:135
Sends a request with JSON-encoded data to the specified URL using the provided HTTP method.
###### Type Parameters
###### T
`T`
###### Parameters
###### method
The HTTP method to be used for the request (only POST, PATCH, or PUT are acceptable).
[`POST`](Vonage-Vetch.md#httpmethods#post) | [`PUT`](Vonage-Vetch.md#httpmethods#put) | [`PATCH`](Vonage-Vetch.md#httpmethods#patch)
###### url
`string`
The URL endpoint for the request.
###### payload?
Optional payload to be sent as the body of the request, JSON-encoded.
###### Returns
`Promise`\<[`VetchResponse`](Vonage-Vetch.md#vetchresponse)\<`T`\>\>
- The response from the request.
###### Inherited from
[`Client`](Vonage-Server-Client.md#client).[`sendRequestWithData`](Vonage-Server-Client.md#client#sendrequestwithdata)
##### sendSignal()
```ts
sendSignal(
signal,
sessionId,
connectionId?): Promise;
```
Defined in: [video/lib/video.ts:861](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L861)
Sends a signal to a session or a specific connection within a session.
###### Parameters
###### signal
[`Signal`](#signal)
The signal to send, including a type and data.
###### sessionId
`string`
The ID of the session to which the signal will be sent.
###### connectionId?
`string`
Optional. The ID of the connection within the session to which the signal will be sent. If not provided, the signal will be sent to the entire session.
###### Returns
`Promise`\<`void`\>
A promise that resolves when the signal is successfully sent.
###### Example
```ts
await videoClient.sendSignal(
{
type: 'text',
data: 'Hello world!',
},
SESSION_ID,
);
```
```
##### setStreamClassLists()
```ts
setStreamClassLists(sessionId, settings): Promise;
```
Defined in: [video/lib/video.ts:895](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L895)
Sets the stream class lists for one or more streams within a session.
###### Parameters
###### sessionId
`string`
The ID of the session for which stream class lists will be set.
###### settings
[`StreamClassList`](#streamclasslist)[]
An array of objects specifying the stream ID and corresponding class lists to be set.
###### Returns
`Promise`\<`void`\>
A promise that resolves when the stream class lists are successfully set.
###### Example
```ts
await videoClient.setStreamClassLists(
SESSION_ID,
[
{
id: STREAM_ID,
layoutClassList: ['full'],
}
]
)
```
##### startArchive()
```ts
startArchive(sessionId, options?): Promise;
```
Defined in: [video/lib/video.ts:918](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L918)
Starts an archive for a given session with optional configuration.
###### Parameters
###### sessionId
`string`
The ID of the session to archive.
###### options?
[`ArchiveOptions`](#archiveoptions)
Optional configuration for the archive, such as audio/video settings, layout, and more.
###### Returns
`Promise`\<[`SingleArchiveResponse`](#singlearchiveresponse)\>
A promise that resolves with information about the started archive.
###### Example
```ts
const archive = await videoClient.startArchive(SESSION_ID);
console.log(archive.id);
```
##### startBroadcast()
```ts
startBroadcast(sessionId, config): Promise;
```
Defined in: [video/lib/video.ts:955](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L955)
Starts a broadcast for a given session with the specified configuration.
###### Parameters
###### sessionId
`string`
The ID of the session to start broadcasting.
###### config
[`BroadcastConfig`](#broadcastconfig)
Configuration for the broadcast, including stream settings, layout, and more.
###### Returns
`Promise`\<[`BroadcastDetailsResponse`](#broadcastdetailsresponse)\>
A promise that resolves with information about the started broadcast.
###### Example
```ts
const broadcast = await videoClient.startBroadcast(
SESSION_ID,
{
outputs: {
hls: {
lowLatency: true,
}
rtmp: [{
serverUrl: 'rtmp://example.com',
}],
}
}
);
```
##### startExperienceComposerRender()
```ts
startExperienceComposerRender(
sessionId,
token,
config): Promise;
```
Defined in: [video/lib/video.ts:986](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L986)
Starts rendering an experience composer with the provided configuration.
###### Parameters
###### sessionId
`string`
The ID of the session associated with the experience composer.
###### token
`string`
The client token for authentication.
###### config
[`ExperienceComposerOptions`](#experiencecomposeroptions)
Configuration options for the experience composer rendering.
###### Returns
`Promise`\<[`ExperienceComposerResponse`](#experiencecomposerresponse)\>
A promise that resolves with information about the started experience composer rendering.
###### Example
```ts
const render = await videoClient.startExperienceComposerRender(
SESSION_ID,
token,
)
console.log(render.id);
```
##### stopArchive()
```ts
stopArchive(archiveId): Promise;
```
Defined in: [video/lib/video.ts:1012](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L1012)
Stops an archive with the given archive ID.
###### Parameters
###### archiveId
`string`
The ID of the archive to stop.
###### Returns
`Promise`\<[`SingleArchiveResponse`](#singlearchiveresponse)\>
A promise that resolves with information about the stopped archive.
###### Example
```ts
const archive = await videoClient.stopArchive(ARCHIVE_ID);
console.log(archive.status);
```
##### stopBroadcast()
```ts
stopBroadcast(broadcastId): Promise;
```
Defined in: [video/lib/video.ts:1031](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L1031)
Stops a broadcast with the given broadcast ID.
###### Parameters
###### broadcastId
`string`
The ID of the broadcast to stop.
###### Returns
`Promise`\<[`BroadcastDetailsResponse`](#broadcastdetailsresponse)\>
A promise that resolves with information about the stopped broadcast.
###### Example
```ts
const broadcast = await videoClient.stopBroadcast(BROADCAST_ID);
console.log(broadcast.status);
```
##### stopExperienceComposerRender()
```ts
stopExperienceComposerRender(renderId): Promise;
```
Defined in: [video/lib/video.ts:1051](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L1051)
Stops an Experience Composer render with the given render ID.
###### Parameters
###### renderId
`string`
The ID of the Experience Composer render to stop.
###### Returns
`Promise`\<`void`\>
A promise that resolves when the render is successfully stopped.
###### Example
```ts
await videoClient.stopExperienceComposerRender(RENDER_ID);
```
##### updateArchiveLayout()
```ts
updateArchiveLayout(archiveId, layout): Promise;
```
Defined in: [video/lib/video.ts:1069](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L1069)
Updates the layout of an archive with the given archive ID.
###### Parameters
###### archiveId
`string`
The ID of the archive to update the layout for.
###### layout
[`ArchiveLayout`](#archivelayout)
The new layout configuration to set for the archive.
###### Returns
`Promise`\<`void`\>
A promise that resolves when the layout is successfully updated.
###### Example
```ts
await videoClient.updateArchiveLayout(
```
##### updateBroadcast()
```ts
updateBroadcast(config): Promise;
```
Defined in: [video/lib/video.ts:1094](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/video.ts#L1094)
Updates the configuration of a broadcast with the given broadcast ID.
###### Parameters
###### config
[`BroadcastUpdateConfig`](#broadcastupdateconfig)
The configuration options to update the broadcast.
###### Returns
`Promise`\<`void`\>
A promise that resolves when the broadcast is successfully updated.
###### Example
```ts
await videoClient.updateBroadcast({
broadcastId: BROADCAST_ID,
hasAudio: true,
})
```
## Type Aliases
### ArchiveLayout
```ts
type ArchiveLayout = object;
```
Defined in: [video/lib/types/ArchiveLayout.ts:6](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ArchiveLayout.ts#L6)
Represents the layout configuration for an archive.
#### Properties
##### screenshareType?
```ts
optional screenshareType: string;
```
Defined in: [video/lib/types/ArchiveLayout.ts:22](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ArchiveLayout.ts#L22)
Optional: The screenshare layout type to use when there is a screen-sharing
stream in the archive (only applicable if type is 'bestFit' and
screenshareType is set).
##### stylesheet?
```ts
optional stylesheet: string;
```
Defined in: [video/lib/types/ArchiveLayout.ts:15](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ArchiveLayout.ts#L15)
Optional: The stylesheet used for custom layout (only applicable if type is 'custom').
##### type
```ts
type: LayoutType;
```
Defined in: [video/lib/types/ArchiveLayout.ts:10](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ArchiveLayout.ts#L10)
The type of layout to be used for the archive.
***
### ArchiveOptions
```ts
type ArchiveOptions = object;
```
Defined in: [video/lib/types/ArchiveOptions.ts:7](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ArchiveOptions.ts#L7)
Interface representing options for creating an archive.
#### Properties
##### hasAudio?
```ts
optional hasAudio: boolean;
```
Defined in: [video/lib/types/ArchiveOptions.ts:11](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ArchiveOptions.ts#L11)
Flag indicating whether audio should be included in the archive.
##### hasVideo?
```ts
optional hasVideo: boolean;
```
Defined in: [video/lib/types/ArchiveOptions.ts:16](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ArchiveOptions.ts#L16)
Flag indicating whether video should be included in the archive.
##### layout?
```ts
optional layout: ArchiveLayout;
```
Defined in: [video/lib/types/ArchiveOptions.ts:21](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ArchiveOptions.ts#L21)
Layout configuration for the archive.
##### maxBitrate?
```ts
optional maxBitrate: number;
```
Defined in: [video/lib/types/ArchiveOptions.ts:46](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ArchiveOptions.ts#L46)
The maximum video bitrate for the archive, in bits per second
##### name?
```ts
optional name: string;
```
Defined in: [video/lib/types/ArchiveOptions.ts:26](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ArchiveOptions.ts#L26)
Name of the archive.
##### outputMode?
```ts
optional outputMode: ArchiveOutputMode;
```
Defined in: [video/lib/types/ArchiveOptions.ts:31](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ArchiveOptions.ts#L31)
Output mode for the archive.
##### resolution?
```ts
optional resolution: Resolution;
```
Defined in: [video/lib/types/ArchiveOptions.ts:36](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ArchiveOptions.ts#L36)
Resolution for the archive.
##### streamMode?
```ts
optional streamMode: StreamMode;
```
Defined in: [video/lib/types/ArchiveOptions.ts:41](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ArchiveOptions.ts#L41)
Stream mode for the archive.
***
### ArchiveSearchFilter
```ts
type ArchiveSearchFilter = object;
```
Defined in: [video/lib/types/ArchiveSearchFilter.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ArchiveSearchFilter.ts#L4)
Interface representing filters for searching archives.
#### Properties
##### count?
```ts
optional count: number;
```
Defined in: [video/lib/types/ArchiveSearchFilter.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ArchiveSearchFilter.ts#L13)
The number of archives to retrieve starting at the offset. Default is 50, with a maximum of 1000.
##### offset?
```ts
optional offset: number;
```
Defined in: [video/lib/types/ArchiveSearchFilter.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ArchiveSearchFilter.ts#L8)
The start offset in the list of existing archives.
##### sessionId?
```ts
optional sessionId: string;
```
Defined in: [video/lib/types/ArchiveSearchFilter.ts:18](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ArchiveSearchFilter.ts#L18)
Retrieve archives for a specific session ID.
***
### BroadcastConfig
```ts
type BroadcastConfig = object;
```
Defined in: [video/lib/types/BroadcastConfig.ts:37](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastConfig.ts#L37)
Interface representing configuration options for a live streaming broadcast.
#### Properties
##### hasAudio?
```ts
optional hasAudio: boolean;
```
Defined in: [video/lib/types/BroadcastConfig.ts:62](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastConfig.ts#L62)
Whether the broadcast has audio.
##### hasVideo?
```ts
optional hasVideo: boolean;
```
Defined in: [video/lib/types/BroadcastConfig.ts:67](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastConfig.ts#L67)
Whether the broadcast has video.
##### layout?
```ts
optional layout: LayoutType;
```
Defined in: [video/lib/types/BroadcastConfig.ts:57](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastConfig.ts#L57)
The layout type for the broadcast.
##### maxBitrate?
```ts
optional maxBitrate: number;
```
Defined in: [video/lib/types/BroadcastConfig.ts:52](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastConfig.ts#L52)
The maximum bitrate for the stream.
##### maxDuration?
```ts
optional maxDuration: number;
```
Defined in: [video/lib/types/BroadcastConfig.ts:47](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastConfig.ts#L47)
The maximum duration for the broadcast, in seconds. The broadcast will
automatically stop when the maximum duration is reached.
##### multiBroadcastTag?
```ts
optional multiBroadcastTag: string;
```
Defined in: [video/lib/types/BroadcastConfig.ts:41](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastConfig.ts#L41)
The unique tag for simultaneous broadcasts (if one was set).
##### outputs
```ts
outputs: BroadcastOutputs;
```
Defined in: [video/lib/types/BroadcastConfig.ts:72](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastConfig.ts#L72)
Configuration options for different types of broadcast streams (HLS and RTMP).
##### resolution?
```ts
optional resolution: Resolution;
```
Defined in: [video/lib/types/BroadcastConfig.ts:82](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastConfig.ts#L82)
The resolution of the broadcast.
##### streamMode?
```ts
optional streamMode: StreamMode;
```
Defined in: [video/lib/types/BroadcastConfig.ts:77](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastConfig.ts#L77)
The stream mode for the broadcast.
***
### BroadcastDetailsResponse
```ts
type BroadcastDetailsResponse = object;
```
Defined in: [video/lib/types/Response/BroadcastDetailsResponse.ts:17](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/BroadcastDetailsResponse.ts#L17)
Represents the response containing details about a live streaming broadcast.
#### Properties
##### applicationId
```ts
applicationId: string;
```
Defined in: [video/lib/types/Response/BroadcastDetailsResponse.ts:36](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/BroadcastDetailsResponse.ts#L36)
The Vonage Application UUID.
##### broadcastUrls
```ts
broadcastUrls: object;
```
Defined in: [video/lib/types/Response/BroadcastDetailsResponse.ts:61](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/BroadcastDetailsResponse.ts#L61)
An object containing details about the HLS and RTMP broadcasts.
###### hls?
```ts
optional hls: string;
```
The URL for the HLS broadcast.
###### rtmp
```ts
rtmp: RTMPStream[];
```
An array of RTMP streams.
##### createdAt
```ts
createdAt: number;
```
Defined in: [video/lib/types/Response/BroadcastDetailsResponse.ts:41](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/BroadcastDetailsResponse.ts#L41)
The time the broadcast started, expressed in milliseconds since the Unix epoch (January 1, 1970, 00:00:00 UTC).
##### hasAudio
```ts
hasAudio: boolean;
```
Defined in: [video/lib/types/Response/BroadcastDetailsResponse.ts:96](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/BroadcastDetailsResponse.ts#L96)
Indicates whether the broadcast has audio.
##### hasVideo
```ts
hasVideo: boolean;
```
Defined in: [video/lib/types/Response/BroadcastDetailsResponse.ts:91](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/BroadcastDetailsResponse.ts#L91)
Indicates whether the broadcast has video.
##### id
```ts
id: string;
```
Defined in: [video/lib/types/Response/BroadcastDetailsResponse.ts:21](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/BroadcastDetailsResponse.ts#L21)
The unique ID for the broadcast.
##### maxBitrate?
```ts
optional maxBitrate: number;
```
Defined in: [video/lib/types/Response/BroadcastDetailsResponse.ts:56](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/BroadcastDetailsResponse.ts#L56)
The maximum bitrate for the stream.
##### maxDuration?
```ts
optional maxDuration: number;
```
Defined in: [video/lib/types/Response/BroadcastDetailsResponse.ts:51](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/BroadcastDetailsResponse.ts#L51)
The maximum duration for the broadcast (if one was set), in seconds.
##### multiBroadcasTag?
```ts
optional multiBroadcasTag: string;
```
Defined in: [video/lib/types/Response/BroadcastDetailsResponse.ts:31](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/BroadcastDetailsResponse.ts#L31)
The unique tag for simultaneous broadcasts (if one was set).
##### resolution?
```ts
optional resolution: Resolution;
```
Defined in: [video/lib/types/Response/BroadcastDetailsResponse.ts:86](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/BroadcastDetailsResponse.ts#L86)
The resolution of the broadcast, if set.
##### sessionId
```ts
sessionId: string;
```
Defined in: [video/lib/types/Response/BroadcastDetailsResponse.ts:26](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/BroadcastDetailsResponse.ts#L26)
The Vonage Video session ID associated with the broadcast.
##### settings?
```ts
optional settings: object;
```
Defined in: [video/lib/types/Response/BroadcastDetailsResponse.ts:76](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/BroadcastDetailsResponse.ts#L76)
An object containing settings for HLS.
###### hls?
```ts
optional hls: HlsSettings;
```
HLS settings.
##### streamMode
```ts
streamMode: StreamMode;
```
Defined in: [video/lib/types/Response/BroadcastDetailsResponse.ts:101](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/BroadcastDetailsResponse.ts#L101)
The stream mode for the broadcast.
##### updatedAt
```ts
updatedAt: number;
```
Defined in: [video/lib/types/Response/BroadcastDetailsResponse.ts:46](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/BroadcastDetailsResponse.ts#L46)
The timestamp when the broadcast was last updated, expressed in milliseconds since the Unix epoch.
***
### BroadcastOutputs
```ts
type BroadcastOutputs = object;
```
Defined in: [video/lib/types/BroadcastConfig.ts:22](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastConfig.ts#L22)
Interface representing configuration options for different types of broadcast streams (HLS and RTMP).
#### Properties
##### hls?
```ts
optional hls: HLSConfig;
```
Defined in: [video/lib/types/BroadcastConfig.ts:26](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastConfig.ts#L26)
Configuration options for HLS streaming.
##### rtmp
```ts
rtmp: RTMPStream[];
```
Defined in: [video/lib/types/BroadcastConfig.ts:31](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastConfig.ts#L31)
Configuration options for RTMP streaming.
***
### BroadcastSearchFilter
```ts
type BroadcastSearchFilter = object;
```
Defined in: [video/lib/types/BroadcastSearchFilter.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastSearchFilter.ts#L4)
Interface representing a filter for searching broadcasts.
#### Properties
##### count?
```ts
optional count: number;
```
Defined in: [video/lib/types/BroadcastSearchFilter.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastSearchFilter.ts#L13)
The maximum number of items to return.
##### offset?
```ts
optional offset: number;
```
Defined in: [video/lib/types/BroadcastSearchFilter.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastSearchFilter.ts#L8)
The offset for paginating the results.
##### sessionId?
```ts
optional sessionId: string;
```
Defined in: [video/lib/types/BroadcastSearchFilter.ts:18](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastSearchFilter.ts#L18)
The session ID to filter broadcasts by.
***
### BroadcastUpdateConfig
```ts
type BroadcastUpdateConfig = object;
```
Defined in: [video/lib/types/BroadcastUpdateConfig.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastUpdateConfig.ts#L4)
Interface representing the configuration for updating a broadcast.
#### Properties
##### addStream?
```ts
optional addStream: string;
```
Defined in: [video/lib/types/BroadcastUpdateConfig.ts:23](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastUpdateConfig.ts#L23)
The ID of a stream to add to the broadcast.
##### broadcastId
```ts
broadcastId: string;
```
Defined in: [video/lib/types/BroadcastUpdateConfig.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastUpdateConfig.ts#L8)
The ID of the broadcast to update.
##### hasAudio?
```ts
optional hasAudio: boolean;
```
Defined in: [video/lib/types/BroadcastUpdateConfig.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastUpdateConfig.ts#L13)
Whether to include audio in the broadcast.
##### hasVideo?
```ts
optional hasVideo: boolean;
```
Defined in: [video/lib/types/BroadcastUpdateConfig.ts:18](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastUpdateConfig.ts#L18)
Whether to include video in the broadcast.
##### removeStream?
```ts
optional removeStream: string;
```
Defined in: [video/lib/types/BroadcastUpdateConfig.ts:28](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastUpdateConfig.ts#L28)
The ID of a stream to remove from the broadcast.
***
### CaptionOptions
```ts
type CaptionOptions = object;
```
Defined in: [video/lib/types/CaptionOptions.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/CaptionOptions.ts#L4)
Interface representing options for captions.
#### Properties
##### languageCode?
```ts
optional languageCode: "en-us";
```
Defined in: [video/lib/types/CaptionOptions.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/CaptionOptions.ts#L8)
The language code for captions (e.g., "en-us").
##### maxDuration?
```ts
optional maxDuration: number;
```
Defined in: [video/lib/types/CaptionOptions.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/CaptionOptions.ts#L13)
The maximum duration for captions.
##### partialCaptions?
```ts
optional partialCaptions: "true" | "false";
```
Defined in: [video/lib/types/CaptionOptions.ts:18](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/CaptionOptions.ts#L18)
Whether to generate partial captions.
##### statusCallbackUrl?
```ts
optional statusCallbackUrl: string;
```
Defined in: [video/lib/types/CaptionOptions.ts:23](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/CaptionOptions.ts#L23)
The URL for the status callback of captions.
***
### CaptionStatusResponse
```ts
type CaptionStatusResponse = object;
```
Defined in: [video/lib/types/Response/CaptionStatusResponse.ts:6](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/CaptionStatusResponse.ts#L6)
Represents a response containing the status of captions for a live streaming broadcast.
#### Properties
##### applicationId
```ts
applicationId: string;
```
Defined in: [video/lib/types/Response/CaptionStatusResponse.ts:15](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/CaptionStatusResponse.ts#L15)
The Vonage Application UUID.
##### captionId
```ts
captionId: string;
```
Defined in: [video/lib/types/Response/CaptionStatusResponse.ts:10](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/CaptionStatusResponse.ts#L10)
The unique ID for the caption.
##### createdAt
```ts
createdAt: number;
```
Defined in: [video/lib/types/Response/CaptionStatusResponse.ts:31](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/CaptionStatusResponse.ts#L31)
The time when the caption was created, expressed in milliseconds since the
Unix epoch (January 1, 1970, 00:00:00 UTC).
##### duration
```ts
duration: number;
```
Defined in: [video/lib/types/Response/CaptionStatusResponse.ts:41](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/CaptionStatusResponse.ts#L41)
The duration of the caption, in seconds.
##### languageCode
```ts
languageCode: "en-us";
```
Defined in: [video/lib/types/Response/CaptionStatusResponse.ts:46](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/CaptionStatusResponse.ts#L46)
The language code of the captions (e.g., "en-us" for English, US).
##### provider
```ts
provider: "aws-transcribe";
```
Defined in: [video/lib/types/Response/CaptionStatusResponse.ts:51](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/CaptionStatusResponse.ts#L51)
The caption provider (e.g., "aws-transcribe").
##### reason?
```ts
optional reason: string;
```
Defined in: [video/lib/types/Response/CaptionStatusResponse.ts:56](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/CaptionStatusResponse.ts#L56)
An optional reason for the caption status.
##### sessionId
```ts
sessionId: string;
```
Defined in: [video/lib/types/Response/CaptionStatusResponse.ts:20](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/CaptionStatusResponse.ts#L20)
The Vonage Video session ID associated with the broadcast.
##### status
```ts
status: CaptionStatus;
```
Defined in: [video/lib/types/Response/CaptionStatusResponse.ts:25](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/CaptionStatusResponse.ts#L25)
The status of the captions.
##### updatedAt
```ts
updatedAt: number;
```
Defined in: [video/lib/types/Response/CaptionStatusResponse.ts:36](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/CaptionStatusResponse.ts#L36)
The timestamp when the caption was last updated, expressed in milliseconds since the Unix epoch.
***
### ClientTokenClaims
```ts
type ClientTokenClaims = object;
```
Defined in: [video/lib/types/ClientTokenClaims.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ClientTokenClaims.ts#L4)
Interface representing claims for a client token.
#### Properties
##### acl
```ts
acl: object;
```
Defined in: [video/lib/types/ClientTokenClaims.ts:48](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ClientTokenClaims.ts#L48)
Access control list (ACL) for paths.
###### paths
```ts
paths: object;
```
Paths and associated objects in the ACL.
###### Index Signature
```ts
[key: string]: object
```
##### connection\_data?
```ts
optional connection_data: string;
```
Defined in: [video/lib/types/ClientTokenClaims.ts:38](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ClientTokenClaims.ts#L38)
Connection data associated with the token (optional).
##### data?
```ts
optional data: string;
```
Defined in: [video/lib/types/ClientTokenClaims.ts:28](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ClientTokenClaims.ts#L28)
Additional data for the token (optional).
##### exp?
```ts
optional exp: number;
```
Defined in: [video/lib/types/ClientTokenClaims.ts:33](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ClientTokenClaims.ts#L33)
The expiration time of the token (optional).
##### initial\_layout\_class\_list
```ts
initial_layout_class_list: string;
```
Defined in: [video/lib/types/ClientTokenClaims.ts:23](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ClientTokenClaims.ts#L23)
The initial layout class list.
##### role
```ts
role: string;
```
Defined in: [video/lib/types/ClientTokenClaims.ts:18](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ClientTokenClaims.ts#L18)
The role of the token.
##### scope
```ts
scope: string;
```
Defined in: [video/lib/types/ClientTokenClaims.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ClientTokenClaims.ts#L8)
The scope of the token.
##### session\_id
```ts
session_id: string;
```
Defined in: [video/lib/types/ClientTokenClaims.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ClientTokenClaims.ts#L13)
The session ID associated with the token.
##### sub
```ts
sub: string;
```
Defined in: [video/lib/types/ClientTokenClaims.ts:43](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ClientTokenClaims.ts#L43)
The subject of the token.
***
### ClientTokenOptions
```ts
type ClientTokenOptions = object;
```
Defined in: [video/lib/types/ClientTokenOptions.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ClientTokenOptions.ts#L4)
Interface representing options for generating a client token.
#### Properties
##### data?
```ts
optional data: string;
```
Defined in: [video/lib/types/ClientTokenOptions.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ClientTokenOptions.ts#L13)
Additional data for the client token (optional).
##### expireTime?
```ts
optional expireTime: number;
```
Defined in: [video/lib/types/ClientTokenOptions.ts:18](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ClientTokenOptions.ts#L18)
The expiration time of the client token in seconds (optional).
##### initialLayoutClassList?
```ts
optional initialLayoutClassList: string[];
```
Defined in: [video/lib/types/ClientTokenOptions.ts:23](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ClientTokenOptions.ts#L23)
An array of initial layout class list for the client token (optional).
##### role?
```ts
optional role: string;
```
Defined in: [video/lib/types/ClientTokenOptions.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ClientTokenOptions.ts#L8)
The role associated with the client token (optional).
***
### CreateSessionResponse
```ts
type CreateSessionResponse = object;
```
Defined in: [video/lib/types/Response/CreateSessionResponse.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/CreateSessionResponse.ts#L4)
Represents a response containing the details of a created session.
#### Properties
##### create\_dt
```ts
create_dt: string;
```
Defined in: [video/lib/types/Response/CreateSessionResponse.ts:18](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/CreateSessionResponse.ts#L18)
The creation date and time of the session in string format.
##### media\_server\_url
```ts
media_server_url: string;
```
Defined in: [video/lib/types/Response/CreateSessionResponse.ts:23](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/CreateSessionResponse.ts#L23)
The URL of the media server associated with the session.
##### project\_id
```ts
project_id: string;
```
Defined in: [video/lib/types/Response/CreateSessionResponse.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/CreateSessionResponse.ts#L13)
The project ID associated with the session.
##### session\_id
```ts
session_id: string;
```
Defined in: [video/lib/types/Response/CreateSessionResponse.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/CreateSessionResponse.ts#L8)
The unique session ID.
***
### EnableCaptionResponse
```ts
type EnableCaptionResponse = object;
```
Defined in: [video/lib/types/Response/EnableCaptionResponse.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/EnableCaptionResponse.ts#L4)
Represents a response indicating the ID of the enabled caption.
#### Properties
##### captionsId
```ts
captionsId: string;
```
Defined in: [video/lib/types/Response/EnableCaptionResponse.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/EnableCaptionResponse.ts#L8)
The unique ID of the enabled caption.
***
### ExperienceComposerListFilter
```ts
type ExperienceComposerListFilter = object;
```
Defined in: [video/lib/types/ExperienceComposerListFilter.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ExperienceComposerListFilter.ts#L4)
Interface representing filters for listing Experience Composer items.
#### Properties
##### count?
```ts
optional count: number;
```
Defined in: [video/lib/types/ExperienceComposerListFilter.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ExperienceComposerListFilter.ts#L13)
The maximum number of items to retrieve (optional).
##### offset?
```ts
optional offset: number;
```
Defined in: [video/lib/types/ExperienceComposerListFilter.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ExperienceComposerListFilter.ts#L8)
The offset for paginating through the list (optional).
***
### ExperienceComposerOptions
```ts
type ExperienceComposerOptions = object;
```
Defined in: [video/lib/types/ExperienceComposerOptions.ts:6](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ExperienceComposerOptions.ts#L6)
Interface representing options for creating an Experience Composer.
#### Properties
##### maxDuration?
```ts
optional maxDuration: number;
```
Defined in: [video/lib/types/ExperienceComposerOptions.ts:25](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ExperienceComposerOptions.ts#L25)
The maximum duration for the Experience Composer (optional).
##### properties?
```ts
optional properties: object;
```
Defined in: [video/lib/types/ExperienceComposerOptions.ts:15](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ExperienceComposerOptions.ts#L15)
Optional properties for the Experience Composer.
###### name?
```ts
optional name: string;
```
The name of the Experience Composer.
##### resolution?
```ts
optional resolution: ExperienceComposerResolution;
```
Defined in: [video/lib/types/ExperienceComposerOptions.ts:30](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ExperienceComposerOptions.ts#L30)
The resolution of the Experience Composer (optional).
##### statusCallbackUrl?
```ts
optional statusCallbackUrl: string;
```
Defined in: [video/lib/types/ExperienceComposerOptions.ts:35](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ExperienceComposerOptions.ts#L35)
The callback URL for status updates (optional).
##### url
```ts
url: string;
```
Defined in: [video/lib/types/ExperienceComposerOptions.ts:10](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/ExperienceComposerOptions.ts#L10)
The URL of the Experience Composer.
***
### ExperienceComposerResponse
```ts
type ExperienceComposerResponse = object;
```
Defined in: [video/lib/types/Response/ExperienceComposerResponse.ts:6](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/ExperienceComposerResponse.ts#L6)
Represents a response from the Experience Composer.
#### Properties
##### applicationId
```ts
applicationId: string;
```
Defined in: [video/lib/types/Response/ExperienceComposerResponse.ts:20](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/ExperienceComposerResponse.ts#L20)
The application ID associated with the response.
##### createdAt
```ts
createdAt: number;
```
Defined in: [video/lib/types/Response/ExperienceComposerResponse.ts:25](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/ExperienceComposerResponse.ts#L25)
The timestamp when the response was created (milliseconds since the Unix epoch).
##### id
```ts
id: string;
```
Defined in: [video/lib/types/Response/ExperienceComposerResponse.ts:10](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/ExperienceComposerResponse.ts#L10)
The unique ID of the response.
##### reason?
```ts
optional reason: string;
```
Defined in: [video/lib/types/Response/ExperienceComposerResponse.ts:55](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/ExperienceComposerResponse.ts#L55)
An optional reason for the status, if available.
##### resolution
```ts
resolution: ExperienceComposerResolution;
```
Defined in: [video/lib/types/Response/ExperienceComposerResponse.ts:40](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/ExperienceComposerResponse.ts#L40)
The resolution used by the Experience Composer.
##### sessionId
```ts
sessionId: string;
```
Defined in: [video/lib/types/Response/ExperienceComposerResponse.ts:15](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/ExperienceComposerResponse.ts#L15)
The session ID associated with the response.
##### status
```ts
status: "starting" | "started" | "stopped" | "failed";
```
Defined in: [video/lib/types/Response/ExperienceComposerResponse.ts:45](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/ExperienceComposerResponse.ts#L45)
The status of the response, which can be one of: "starting", "started", "stopped", "failed".
##### streamId
```ts
streamId: string;
```
Defined in: [video/lib/types/Response/ExperienceComposerResponse.ts:50](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/ExperienceComposerResponse.ts#L50)
The stream ID associated with the response.
##### updatedAt
```ts
updatedAt: number;
```
Defined in: [video/lib/types/Response/ExperienceComposerResponse.ts:30](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/ExperienceComposerResponse.ts#L30)
The timestamp when the response was last updated (milliseconds since the Unix epoch).
##### url
```ts
url: string;
```
Defined in: [video/lib/types/Response/ExperienceComposerResponse.ts:35](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/ExperienceComposerResponse.ts#L35)
The URL associated with the response.
***
### HLSConfig
```ts
type HLSConfig = object;
```
Defined in: [video/lib/types/BroadcastConfig.ts:7](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastConfig.ts#L7)
Interface representing configuration options for HLS streaming.
#### Properties
##### dvr?
```ts
optional dvr: boolean;
```
Defined in: [video/lib/types/BroadcastConfig.ts:16](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastConfig.ts#L16)
Whether to enable DVR functionality (rewinding, pausing, and resuming) in players that support it.
##### lowLatency?
```ts
optional lowLatency: boolean;
```
Defined in: [video/lib/types/BroadcastConfig.ts:11](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/BroadcastConfig.ts#L11)
Whether to enable low-latency mode for the HLS stream.
***
### HlsSettings
```ts
type HlsSettings = object;
```
Defined in: [video/lib/types/Response/BroadcastDetailsResponse.ts:7](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/BroadcastDetailsResponse.ts#L7)
Represents HLS settings for a live streaming broadcast.
#### Properties
##### lowLatency?
```ts
optional lowLatency: boolean;
```
Defined in: [video/lib/types/Response/BroadcastDetailsResponse.ts:11](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/BroadcastDetailsResponse.ts#L11)
Whether to enable low-latency mode for the HLS stream.
***
### InitiateSIPCallRequest
```ts
type InitiateSIPCallRequest = SIPCallOptions & object;
```
Defined in: [video/lib/types/Request/InitiateSIPCallRequest.ts:6](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Request/InitiateSIPCallRequest.ts#L6)
Represents the request to initiate a SIP call with additional session information.
#### Type declaration
##### sessionId
```ts
sessionId: string;
```
The session ID of the Vonage Video session to associate with the SIP call.
***
### MultiArchiveResponse
```ts
type MultiArchiveResponse = object;
```
Defined in: [video/lib/types/Response/MultiArchiveResponse.ts:6](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/MultiArchiveResponse.ts#L6)
Represents a response containing multiple archive items.
#### Properties
##### count
```ts
count: number;
```
Defined in: [video/lib/types/Response/MultiArchiveResponse.ts:10](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/MultiArchiveResponse.ts#L10)
The count of archive items in the response.
##### items
```ts
items: SingleArchiveResponse[];
```
Defined in: [video/lib/types/Response/MultiArchiveResponse.ts:15](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/MultiArchiveResponse.ts#L15)
An array of SingleArchiveResponse objects representing individual archive items.
***
### MultiBroadcastResponse
```ts
type MultiBroadcastResponse = object;
```
Defined in: [video/lib/types/Response/MultiBroadcastResponse.ts:6](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/MultiBroadcastResponse.ts#L6)
Represents a response containing multiple broadcast details items.
#### Properties
##### count
```ts
count: number;
```
Defined in: [video/lib/types/Response/MultiBroadcastResponse.ts:10](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/MultiBroadcastResponse.ts#L10)
The count of broadcast details items in the response.
##### items
```ts
items: BroadcastDetailsResponse[];
```
Defined in: [video/lib/types/Response/MultiBroadcastResponse.ts:15](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/MultiBroadcastResponse.ts#L15)
An array of BroadcastDetailsResponse objects representing individual broadcast details items.
***
### MultiExperienceComposerResponse
```ts
type MultiExperienceComposerResponse = object;
```
Defined in: [video/lib/types/Response/MultiExperienceComposerResponse.ts:6](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/MultiExperienceComposerResponse.ts#L6)
Represents a response containing multiple ExperienceComposerResponse items.
#### Properties
##### count
```ts
count: number;
```
Defined in: [video/lib/types/Response/MultiExperienceComposerResponse.ts:10](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/MultiExperienceComposerResponse.ts#L10)
The count of ExperienceComposerResponse items in the response.
##### items
```ts
items: ExperienceComposerResponse[];
```
Defined in: [video/lib/types/Response/MultiExperienceComposerResponse.ts:15](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/MultiExperienceComposerResponse.ts#L15)
An array of ExperienceComposerResponse objects representing individual items.
***
### MultiStreamLayoutResponse
```ts
type MultiStreamLayoutResponse = object;
```
Defined in: [video/lib/types/Response/MultiStreamLayoutResponse.ts:6](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/MultiStreamLayoutResponse.ts#L6)
Represents a response containing multiple SingleStreamLayoutResponse items.
#### Properties
##### count
```ts
count: number;
```
Defined in: [video/lib/types/Response/MultiStreamLayoutResponse.ts:10](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/MultiStreamLayoutResponse.ts#L10)
The count of SingleStreamLayoutResponse items in the response.
##### items
```ts
items: SingleStreamLayoutResponse[];
```
Defined in: [video/lib/types/Response/MultiStreamLayoutResponse.ts:15](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/MultiStreamLayoutResponse.ts#L15)
An array of SingleStreamLayoutResponse objects representing individual items.
***
### ProjectDetailsResponse
```ts
type ProjectDetailsResponse = object;
```
Defined in: [video/lib/types/Response/ProjectDetailsResponse.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/ProjectDetailsResponse.ts#L4)
Represents the details of a project.
#### Properties
##### createdAt
```ts
createdAt: number;
```
Defined in: [video/lib/types/Response/ProjectDetailsResponse.ts:33](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/ProjectDetailsResponse.ts#L33)
The timestamp when the project was created, expressed in milliseconds since the Unix epoch.
##### environment
```ts
environment: string;
```
Defined in: [video/lib/types/Response/ProjectDetailsResponse.ts:28](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/ProjectDetailsResponse.ts#L28)
The environment of the project.
##### id
```ts
id: string;
```
Defined in: [video/lib/types/Response/ProjectDetailsResponse.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/ProjectDetailsResponse.ts#L8)
The unique identifier of the project.
##### name
```ts
name: string;
```
Defined in: [video/lib/types/Response/ProjectDetailsResponse.ts:23](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/ProjectDetailsResponse.ts#L23)
The name of the project.
##### secret
```ts
secret: string;
```
Defined in: [video/lib/types/Response/ProjectDetailsResponse.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/ProjectDetailsResponse.ts#L13)
The secret associated with the project.
##### status
```ts
status: string;
```
Defined in: [video/lib/types/Response/ProjectDetailsResponse.ts:18](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/ProjectDetailsResponse.ts#L18)
The status of the project.
***
### RTMPStream
```ts
type RTMPStream = object;
```
Defined in: [video/lib/types/RTMPStream.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/RTMPStream.ts#L4)
Interface representing an RTMP stream configuration.
#### Properties
##### id?
```ts
optional id: string;
```
Defined in: [video/lib/types/RTMPStream.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/RTMPStream.ts#L8)
Optional unique identifier for the RTMP stream.
##### serverUrl
```ts
serverUrl: string;
```
Defined in: [video/lib/types/RTMPStream.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/RTMPStream.ts#L13)
The RTMP server URL to which the stream will be sent.
##### streamName
```ts
streamName: string;
```
Defined in: [video/lib/types/RTMPStream.ts:18](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/RTMPStream.ts#L18)
The name of the stream on the RTMP server.
***
### Session
```ts
type Session = object;
```
Defined in: [video/lib/types/Session.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Session.ts#L4)
Interface representing a session configuration.
#### Properties
##### archiveMode
```ts
archiveMode: string;
```
Defined in: [video/lib/types/Session.ts:23](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Session.ts#L23)
The archive mode for the session (e.g., "MANUAL" or "ALWAYS").
##### location
```ts
location: string;
```
Defined in: [video/lib/types/Session.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Session.ts#L13)
The location of the session.
##### mediaMode
```ts
mediaMode: string;
```
Defined in: [video/lib/types/Session.ts:18](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Session.ts#L18)
The media mode for the session (e.g., "ROUTED" or "RELAYED").
##### sessionId
```ts
sessionId: string;
```
Defined in: [video/lib/types/Session.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Session.ts#L8)
The unique identifier for the session.
***
### Signal
```ts
type Signal = object;
```
Defined in: [video/lib/types/Singal.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Singal.ts#L4)
Represents a signal containing type and data properties.
#### Properties
##### data
```ts
data: string;
```
Defined in: [video/lib/types/Singal.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Singal.ts#L13)
The data associated with the signal, which can be any string data related to the signal.
##### type
```ts
type: string;
```
Defined in: [video/lib/types/Singal.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Singal.ts#L8)
The type of the signal, which can be a custom string identifying the signal type.
***
### SingleArchiveResponse
```ts
type SingleArchiveResponse = object;
```
Defined in: [video/lib/types/Response/SingleArchiveResponse.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleArchiveResponse.ts#L4)
Represents the details of a single archive.
#### Properties
##### createdAt
```ts
createdAt: number;
```
Defined in: [video/lib/types/Response/SingleArchiveResponse.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleArchiveResponse.ts#L8)
The timestamp when the archive was created, expressed in milliseconds since the Unix epoch.
##### duration
```ts
duration: number;
```
Defined in: [video/lib/types/Response/SingleArchiveResponse.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleArchiveResponse.ts#L13)
The duration of the archive in seconds.
##### hasAudio
```ts
hasAudio: boolean;
```
Defined in: [video/lib/types/Response/SingleArchiveResponse.ts:18](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleArchiveResponse.ts#L18)
Indicates whether the archive has audio.
##### hasVideo
```ts
hasVideo: boolean;
```
Defined in: [video/lib/types/Response/SingleArchiveResponse.ts:23](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleArchiveResponse.ts#L23)
Indicates whether the archive has video.
##### id
```ts
id: string;
```
Defined in: [video/lib/types/Response/SingleArchiveResponse.ts:28](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleArchiveResponse.ts#L28)
The unique identifier of the archive.
##### name
```ts
name: string;
```
Defined in: [video/lib/types/Response/SingleArchiveResponse.ts:33](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleArchiveResponse.ts#L33)
The name of the archive.
##### outputMode
```ts
outputMode: string;
```
Defined in: [video/lib/types/Response/SingleArchiveResponse.ts:38](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleArchiveResponse.ts#L38)
The output mode of the archive.
##### projectId
```ts
projectId: string;
```
Defined in: [video/lib/types/Response/SingleArchiveResponse.ts:43](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleArchiveResponse.ts#L43)
The unique identifier of the project to which the archive belongs.
##### reason
```ts
reason: string;
```
Defined in: [video/lib/types/Response/SingleArchiveResponse.ts:48](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleArchiveResponse.ts#L48)
The reason for the archive status.
##### resolution
```ts
resolution: string;
```
Defined in: [video/lib/types/Response/SingleArchiveResponse.ts:53](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleArchiveResponse.ts#L53)
The resolution of the archive.
##### sessionId
```ts
sessionId: string;
```
Defined in: [video/lib/types/Response/SingleArchiveResponse.ts:58](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleArchiveResponse.ts#L58)
The unique identifier of the session associated with the archive.
##### size
```ts
size: number;
```
Defined in: [video/lib/types/Response/SingleArchiveResponse.ts:63](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleArchiveResponse.ts#L63)
The size of the archive in bytes.
##### status
```ts
status: string;
```
Defined in: [video/lib/types/Response/SingleArchiveResponse.ts:68](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleArchiveResponse.ts#L68)
The status of the archive.
##### streamMode
```ts
streamMode: string;
```
Defined in: [video/lib/types/Response/SingleArchiveResponse.ts:73](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleArchiveResponse.ts#L73)
The stream mode of the archive.
##### streams?
```ts
optional streams: string[];
```
Defined in: [video/lib/types/Response/SingleArchiveResponse.ts:83](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleArchiveResponse.ts#L83)
An array of stream identifiers associated with the archive.
##### url?
```ts
optional url: string;
```
Defined in: [video/lib/types/Response/SingleArchiveResponse.ts:78](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleArchiveResponse.ts#L78)
The URL of the archive.
***
### SingleStreamLayoutResponse
```ts
type SingleStreamLayoutResponse = object;
```
Defined in: [video/lib/types/Response/SingleStreamLayoutResponse.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleStreamLayoutResponse.ts#L4)
Represents the details of a single stream layout.
#### Properties
##### id
```ts
id: string;
```
Defined in: [video/lib/types/Response/SingleStreamLayoutResponse.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleStreamLayoutResponse.ts#L8)
The unique identifier of the stream layout.
##### layoutClassList
```ts
layoutClassList: string[];
```
Defined in: [video/lib/types/Response/SingleStreamLayoutResponse.ts:23](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleStreamLayoutResponse.ts#L23)
An array of CSS class names associated with the layout.
##### name
```ts
name: string;
```
Defined in: [video/lib/types/Response/SingleStreamLayoutResponse.ts:18](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleStreamLayoutResponse.ts#L18)
The name of the stream layout.
##### videoType
```ts
videoType: string;
```
Defined in: [video/lib/types/Response/SingleStreamLayoutResponse.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SingleStreamLayoutResponse.ts#L13)
The type of video associated with the stream layout.
***
### SIPCallOptions
```ts
type SIPCallOptions = object;
```
Defined in: [video/lib/types/SIPCallOptions.ts:56](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/SIPCallOptions.ts#L56)
Interface representing options for initiating a SIP call.
#### Properties
##### sip
```ts
sip: SIPCallSIPConfig;
```
Defined in: [video/lib/types/SIPCallOptions.ts:65](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/SIPCallOptions.ts#L65)
Configuration options for the SIP call.
##### token
```ts
token: string;
```
Defined in: [video/lib/types/SIPCallOptions.ts:60](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/SIPCallOptions.ts#L60)
The authentication token for the SIP call.
***
### SIPCallResponse
```ts
type SIPCallResponse = object;
```
Defined in: [video/lib/types/Response/SIPCallResponse.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SIPCallResponse.ts#L4)
Represents the response for a SIP call initiation.
#### Properties
##### connectionId
```ts
connectionId: string;
```
Defined in: [video/lib/types/Response/SIPCallResponse.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SIPCallResponse.ts#L13)
The connection identifier associated with the SIP call.
##### id
```ts
id: string;
```
Defined in: [video/lib/types/Response/SIPCallResponse.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SIPCallResponse.ts#L8)
The unique identifier of the SIP call.
##### streamId
```ts
streamId: string;
```
Defined in: [video/lib/types/Response/SIPCallResponse.ts:18](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/SIPCallResponse.ts#L18)
The stream identifier associated with the SIP call.
***
### SIPCallSIPConfig
```ts
type SIPCallSIPConfig = object;
```
Defined in: [video/lib/types/SIPCallOptions.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/SIPCallOptions.ts#L4)
Configuration options for a SIP call.
#### Properties
##### auth?
```ts
optional auth: object;
```
Defined in: [video/lib/types/SIPCallOptions.ts:25](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/SIPCallOptions.ts#L25)
Authentication credentials for the SIP call.
###### password
```ts
password: string;
```
The password for SIP authentication.
###### username
```ts
username: string;
```
The username for SIP authentication.
##### from?
```ts
optional from: string;
```
Defined in: [video/lib/types/SIPCallOptions.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/SIPCallOptions.ts#L13)
The optional "from" field for the SIP call.
##### headers?
```ts
optional headers: object;
```
Defined in: [video/lib/types/SIPCallOptions.ts:18](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/SIPCallOptions.ts#L18)
Custom headers to be included in the SIP call.
###### Index Signature
```ts
[key: string]: string
```
##### observeForceMute?
```ts
optional observeForceMute: boolean;
```
Defined in: [video/lib/types/SIPCallOptions.ts:50](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/SIPCallOptions.ts#L50)
Indicates whether to observe and force mute for the SIP call.
##### secure?
```ts
optional secure: boolean;
```
Defined in: [video/lib/types/SIPCallOptions.ts:40](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/SIPCallOptions.ts#L40)
Indicates whether the SIP call should be secure.
##### uri
```ts
uri: string;
```
Defined in: [video/lib/types/SIPCallOptions.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/SIPCallOptions.ts#L8)
The SIP URI to initiate the call.
##### video?
```ts
optional video: boolean;
```
Defined in: [video/lib/types/SIPCallOptions.ts:45](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/SIPCallOptions.ts#L45)
Indicates whether video is enabled for the SIP call.
***
### StreamClassList
```ts
type StreamClassList = object;
```
Defined in: [video/lib/types/StreamClassList.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/StreamClassList.ts#L4)
Represents a stream with associated layout class list.
#### Properties
##### id
```ts
id: string;
```
Defined in: [video/lib/types/StreamClassList.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/StreamClassList.ts#L8)
The ID of the stream.
##### layoutClassList
```ts
layoutClassList: string[];
```
Defined in: [video/lib/types/StreamClassList.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/StreamClassList.ts#L13)
An array of layout class names associated with the stream.
***
### VideoClassParameters
```ts
type VideoClassParameters = AuthParams & VetchOptions & object;
```
Defined in: [video/lib/parameters/VideoClassParameters.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/parameters/VideoClassParameters.ts#L8)
Parameters required to initialize the Video class.
#### Type declaration
##### applicationId
```ts
applicationId: string;
```
The unique identifier for the application.
##### auth?
```ts
optional auth: AuthInterface;
```
Optional authentication interface to use for custom authentication.
##### privateKey
```ts
privateKey: string;
```
The private key used for authentication.
***
### VideoResponse\
```ts
type VideoResponse = VetchResponse;
```
Defined in: [video/lib/types/VideoResponse.ts:6](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/VideoResponse.ts#L6)
Represents a video response that wraps a Vetch response.
#### Type Parameters
##### T
`T`
***
### WebSocketConfig
```ts
type WebSocketConfig = object;
```
Defined in: [video/lib/types/WebSocketConfig.ts:6](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/WebSocketConfig.ts#L6)
Configuration options for establishing a WebSocket connection.
#### Properties
##### audioRate?
```ts
optional audioRate: AudioRate;
```
Defined in: [video/lib/types/WebSocketConfig.ts:27](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/WebSocketConfig.ts#L27)
The audio rate to be used for the WebSocket connection.
##### headers?
```ts
optional headers: object;
```
Defined in: [video/lib/types/WebSocketConfig.ts:20](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/WebSocketConfig.ts#L20)
Optional headers to include in the WebSocket request.
###### Index Signature
```ts
[key: string]: string
```
##### streams?
```ts
optional streams: string[];
```
Defined in: [video/lib/types/WebSocketConfig.ts:15](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/WebSocketConfig.ts#L15)
An array of stream IDs to associate with the WebSocket connection.
##### uri
```ts
uri: string;
```
Defined in: [video/lib/types/WebSocketConfig.ts:10](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/WebSocketConfig.ts#L10)
The URI to connect to the WebSocket server.
***
### WebSocketConnectResponse
```ts
type WebSocketConnectResponse = object;
```
Defined in: [video/lib/types/Response/WebSocketConnectResponse.ts:4](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/WebSocketConnectResponse.ts#L4)
Represents the response for a WebSocket connection.
#### Properties
##### connectionId
```ts
connectionId: string;
```
Defined in: [video/lib/types/Response/WebSocketConnectResponse.ts:13](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/WebSocketConnectResponse.ts#L13)
The connection identifier associated with the WebSocket connection.
##### id
```ts
id: string;
```
Defined in: [video/lib/types/Response/WebSocketConnectResponse.ts:8](https://github.com/Vonage/vonage-node-sdk/blob/8ae0ebbe4f90b55bac891ec9624fbc56f991d476/packages/video/lib/types/Response/WebSocketConnectResponse.ts#L8)
The unique identifier of the WebSocket connection.