IvsRealTimeClient

Introduction

The Amazon Interactive Video Service (IVS) real-time API is REST compatible, using a standard HTTP API and an AWS EventBridge event stream for responses. JSON is used for both requests and responses, including errors.

Terminology:

  • A stage is a virtual space where participants can exchange video in real time.

  • A participant token is a token that authenticates a participant when they join a stage.

  • A participant object represents participants (people) in the stage and contains information about them. When a token is created, it includes a participant ID; when a participant uses that token to join a stage, the participant is associated with that participant ID. There is a 1:1 mapping between participant tokens and participants.

  • Server-side composition: The composition process composites participants of a stage into a single video and forwards it to a set of outputs (e.g., IVS channels). Composition endpoints support this process.

  • Server-side composition: A composition controls the look of the outputs, including how participants are positioned in the video.

Resources

The following resources contain information about your IVS live stream (see Getting Started with Amazon IVS Real-Time Streaming):

  • Stage — A stage is a virtual space where participants can exchange video in real time.

Tagging

A tag is a metadata label that you assign to an AWS resource. A tag comprises a key and a value, both set by you. For example, you might set a tag as topic:nature to label a particular video category. See Tagging AWS Resources for more information, including restrictions that apply to tags and "Tag naming limits and requirements"; Amazon IVS stages has no service-specific constraints beyond what is documented there.

Tags can help you identify and organize your AWS resources. For example, you can use the same tag for different resources to indicate that they are related. You can also use tags to manage access (see Access Tags).

The Amazon IVS real-time API has these tag-related endpoints: TagResource, UntagResource, and ListTagsForResource. The following resource supports tagging: Stage.

At most 50 tags can be applied to a resource.

Stages Endpoints

  • CreateParticipantToken — Creates an additional token for a specified stage. This can be done after stage creation or when tokens expire.

  • CreateStage — Creates a new stage (and optionally participant tokens).

  • DeleteStage — Shuts down and deletes the specified stage (disconnecting all participants).

  • DisconnectParticipant — Disconnects a specified participant and revokes the participant permanently from a specified stage.

  • GetParticipant — Gets information about the specified participant token.

  • GetStage — Gets information for the specified stage.

  • GetStageSession — Gets information for the specified stage session.

  • ListParticipantEvents — Lists events for a specified participant that occurred during a specified stage session.

  • ListParticipants — Lists all participants in a specified stage session.

  • ListStages — Gets summary information about all stages in your account, in the AWS region where the API request is processed.

  • ListStageSessions — Gets all sessions for a specified stage.

  • UpdateStage — Updates a stage’s configuration.

Composition Endpoints

  • GetComposition — Gets information about the specified Composition resource.

  • ListCompositions — Gets summary information about all Compositions in your account, in the AWS region where the API request is processed.

  • StartComposition — Starts a Composition from a stage based on the configuration provided in the request.

  • StopComposition — Stops and deletes a Composition resource. Any broadcast from the Composition resource is stopped.

EncoderConfiguration Endpoints

  • CreateEncoderConfiguration — Creates an EncoderConfiguration object.

  • DeleteEncoderConfiguration — Deletes an EncoderConfiguration resource. Ensures that no Compositions are using this template; otherwise, returns an error.

  • GetEncoderConfiguration — Gets information about the specified EncoderConfiguration resource.

  • ListEncoderConfigurations — Gets summary information about all EncoderConfigurations in your account, in the AWS region where the API request is processed.

StorageConfiguration Endpoints

  • CreateStorageConfiguration — Creates a new storage configuration, used to enable recording to Amazon S3.

  • DeleteStorageConfiguration — Deletes the storage configuration for the specified ARN.

  • GetStorageConfiguration — Gets the storage configuration for the specified ARN.

  • ListStorageConfigurations — Gets summary information about all storage configurations in your account, in the AWS region where the API request is processed.

Tags Endpoints

  • ListTagsForResource — Gets information about AWS tags for the specified ARN.

  • TagResource — Adds or updates tags for the AWS resource with the specified ARN.

  • UntagResource — Removes tags from the resource with the specified ARN.

Properties

Link copied to clipboard
abstract override val config: IvsRealTimeClient.Config

IvsRealTimeClient's configuration

Functions

Link copied to clipboard
abstract suspend fun createEncoderConfiguration(input: CreateEncoderConfigurationRequest = CreateEncoderConfigurationRequest { }): CreateEncoderConfigurationResponse

Creates an EncoderConfiguration object.

Link copied to clipboard

Creates an additional token for a specified stage. This can be done after stage creation or when tokens expire. Tokens always are scoped to the stage for which they are created.

Link copied to clipboard
abstract suspend fun createStage(input: CreateStageRequest = CreateStageRequest { }): CreateStageResponse

Creates a new stage (and optionally participant tokens).

Link copied to clipboard

Creates a new storage configuration, used to enable recording to Amazon S3. When a StorageConfiguration is created, IVS will modify the S3 bucketPolicy of the provided bucket. This will ensure that IVS has sufficient permissions to write content to the provided bucket.

Link copied to clipboard

Deletes an EncoderConfiguration resource. Ensures that no Compositions are using this template; otherwise, returns an error.

Link copied to clipboard
abstract suspend fun deleteStage(input: DeleteStageRequest): DeleteStageResponse

Shuts down and deletes the specified stage (disconnecting all participants).

Link copied to clipboard

Deletes the storage configuration for the specified ARN.

Link copied to clipboard

Disconnects a specified participant and revokes the participant permanently from a specified stage.

Link copied to clipboard

Get information about the specified Composition resource.

Link copied to clipboard

Gets information about the specified EncoderConfiguration resource.

Link copied to clipboard

Gets information about the specified participant token.

Link copied to clipboard
abstract suspend fun getStage(input: GetStageRequest): GetStageResponse

Gets information for the specified stage.

Link copied to clipboard

Gets information for the specified stage session.

Link copied to clipboard

Gets the storage configuration for the specified ARN.

Link copied to clipboard
abstract suspend fun listCompositions(input: ListCompositionsRequest = ListCompositionsRequest { }): ListCompositionsResponse

Gets summary information about all Compositions in your account, in the AWS region where the API request is processed.

Link copied to clipboard
abstract suspend fun listEncoderConfigurations(input: ListEncoderConfigurationsRequest = ListEncoderConfigurationsRequest { }): ListEncoderConfigurationsResponse

Gets summary information about all EncoderConfigurations in your account, in the AWS region where the API request is processed.

Link copied to clipboard

Lists events for a specified participant that occurred during a specified stage session.

Link copied to clipboard

Lists all participants in a specified stage session.

Link copied to clipboard
abstract suspend fun listStages(input: ListStagesRequest = ListStagesRequest { }): ListStagesResponse

Gets summary information about all stages in your account, in the AWS region where the API request is processed.

Link copied to clipboard

Gets all sessions for a specified stage.

Link copied to clipboard
abstract suspend fun listStorageConfigurations(input: ListStorageConfigurationsRequest = ListStorageConfigurationsRequest { }): ListStorageConfigurationsResponse

Gets summary information about all storage configurations in your account, in the AWS region where the API request is processed.

Link copied to clipboard

Gets information about AWS tags for the specified ARN.

Link copied to clipboard

Starts a Composition from a stage based on the configuration provided in the request.

Link copied to clipboard

Stops and deletes a Composition resource. Any broadcast from the Composition resource is stopped.

Link copied to clipboard
abstract suspend fun tagResource(input: TagResourceRequest): TagResourceResponse

Adds or updates tags for the AWS resource with the specified ARN.

Link copied to clipboard

Removes tags from the resource with the specified ARN.

Link copied to clipboard
abstract suspend fun updateStage(input: UpdateStageRequest): UpdateStageResponse

Updates a stage’s configuration.

Inherited functions

Link copied to clipboard
expect abstract fun close()
Link copied to clipboard

Creates an EncoderConfiguration object.

Link copied to clipboard

Creates an additional token for a specified stage. This can be done after stage creation or when tokens expire. Tokens always are scoped to the stage for which they are created.

Link copied to clipboard

Creates a new stage (and optionally participant tokens).

Link copied to clipboard

Creates a new storage configuration, used to enable recording to Amazon S3. When a StorageConfiguration is created, IVS will modify the S3 bucketPolicy of the provided bucket. This will ensure that IVS has sufficient permissions to write content to the provided bucket.

Link copied to clipboard

Deletes an EncoderConfiguration resource. Ensures that no Compositions are using this template; otherwise, returns an error.

Link copied to clipboard

Shuts down and deletes the specified stage (disconnecting all participants).

Link copied to clipboard

Deletes the storage configuration for the specified ARN.

Link copied to clipboard

Disconnects a specified participant and revokes the participant permanently from a specified stage.

Link copied to clipboard

Get information about the specified Composition resource.

Link copied to clipboard

Gets information about the specified EncoderConfiguration resource.

Link copied to clipboard

Gets information about the specified participant token.

Link copied to clipboard
inline suspend fun IvsRealTimeClient.getStage(crossinline block: GetStageRequest.Builder.() -> Unit): GetStageResponse

Gets information for the specified stage.

Link copied to clipboard

Gets information for the specified stage session.

Link copied to clipboard

Gets the storage configuration for the specified ARN.

Link copied to clipboard

Gets summary information about all Compositions in your account, in the AWS region where the API request is processed.

Link copied to clipboard

Gets summary information about all EncoderConfigurations in your account, in the AWS region where the API request is processed.

Link copied to clipboard

Lists events for a specified participant that occurred during a specified stage session.

Link copied to clipboard

Lists all participants in a specified stage session.

Link copied to clipboard
inline suspend fun IvsRealTimeClient.listStages(crossinline block: ListStagesRequest.Builder.() -> Unit): ListStagesResponse

Gets summary information about all stages in your account, in the AWS region where the API request is processed.

Link copied to clipboard

Gets all sessions for a specified stage.

Link copied to clipboard
Link copied to clipboard

Gets summary information about all storage configurations in your account, in the AWS region where the API request is processed.

Link copied to clipboard

Gets information about AWS tags for the specified ARN.

Link copied to clipboard

Starts a Composition from a stage based on the configuration provided in the request.

Link copied to clipboard

Stops and deletes a Composition resource. Any broadcast from the Composition resource is stopped.

Link copied to clipboard

Adds or updates tags for the AWS resource with the specified ARN.

Link copied to clipboard

Removes tags from the resource with the specified ARN.

Link copied to clipboard

Updates a stage’s configuration.

Link copied to clipboard

Create a copy of the client with one or more configuration values overridden. This method allows the caller to perform scoped config overrides for one or more client operations.