From 3520f1a323d95b322af24dec977eb22860ee056d Mon Sep 17 00:00:00 2001
From: awstools
-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:
+Key Concepts
+ A stage is a virtual space where participants can exchange video in real time.
+Stage — 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.
+Participant token — A token that authenticates a participant when they join a stage. A participant object represents participants (people) in the stage and
+
+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. For server-side composition: Server-side composition: The composition process composites participants
+
+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.
+
-
For more information about your IVS live stream, also see Getting Started with Amazon IVS Real-Time Streaming.
Tagging
@@ -63,157 +61,6 @@ manage access (see void ): void; + /** + * @see {@link DeletePublicKeyCommand} + */ + deletePublicKey( + args: DeletePublicKeyCommandInput, + options?: __HttpHandlerOptions + ): Promise- * Introduction - *
- *The Amazon Interactive Video Service (IVS) real-time API is REST compatible, using a standard HTTP + *
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:
+ *+ * Key Concepts + *
*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.
+ *+ * Stage — A virtual space where participants can exchange video in real time.
*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.
+ *+ * Participant token — A token that authenticates a participant when they join a stage.
*Server-side composition: A composition controls the look of the outputs, - * including how participants are positioned in the video.
+ *+ * 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.
*- * Resources - *
- *The following resources contain information about your IVS live stream (see Getting Started with Amazon IVS Real-Time Streaming):
+ *For server-side composition:
*- * Stage — A stage is a virtual space where participants can exchange video in real time.
+ * 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. + *+ * Composition — Controls the look of the outputs, + * including how participants are positioned in the video.
*For more information about your IVS live stream, also see Getting Started with Amazon IVS Real-Time Streaming.
** Tagging *
@@ -616,157 +692,6 @@ export interface IVSRealTime { *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.
- *- * Introduction - *
- *The Amazon Interactive Video Service (IVS) real-time API is REST compatible, using a standard HTTP + *
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:
+ *+ * Key Concepts + *
*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.
+ *+ * Stage — A virtual space where participants can exchange video in real time.
*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.
+ *+ * Participant token — A token that authenticates a participant when they join a stage.
*Server-side composition: A composition controls the look of the outputs, - * including how participants are positioned in the video.
+ *+ * 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.
*- * Resources - *
- *The following resources contain information about your IVS live stream (see Getting Started with Amazon IVS Real-Time Streaming):
+ *For server-side composition:
*- * Stage — A stage is a virtual space where participants can exchange video in real time.
+ * 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. + *+ * Composition — Controls the look of the outputs, + * including how participants are positioned in the video.
*For more information about your IVS live stream, also see Getting Started with Amazon IVS Real-Time Streaming.
** Tagging *
@@ -420,157 +430,6 @@ export interface IVSRealTimeClientResolvedConfig extends IVSRealTimeClientResolv *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.
- *Deletes the specified public key used to sign stage participant tokens. + * This invalidates future participant tokens generated using the key pair’s private key. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { IVSRealTimeClient, DeletePublicKeyCommand } from "@aws-sdk/client-ivs-realtime"; // ES Modules import + * // const { IVSRealTimeClient, DeletePublicKeyCommand } = require("@aws-sdk/client-ivs-realtime"); // CommonJS import + * const client = new IVSRealTimeClient(config); + * const input = { // DeletePublicKeyRequest + * arn: "STRING_VALUE", // required + * }; + * const command = new DeletePublicKeyCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param DeletePublicKeyCommandInput - {@link DeletePublicKeyCommandInput} + * @returns {@link DeletePublicKeyCommandOutput} + * @see {@link DeletePublicKeyCommandInput} for command's `input` shape. + * @see {@link DeletePublicKeyCommandOutput} for command's `response` shape. + * @see {@link IVSRealTimeClientResolvedConfig | config} for IVSRealTimeClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + * + * + * @throws {@link ConflictException} (client fault) + * + * + * @throws {@link PendingVerification} (client fault) + * + * + * @throws {@link ResourceNotFoundException} (client fault) + * + * + * @throws {@link ValidationException} (client fault) + * + * + * @throws {@link IVSRealTimeServiceException} + *Base exception class for all service exceptions from IVSRealTime service.
+ * + * @public + */ +export class DeletePublicKeyCommand extends $Command + .classBuilder< + DeletePublicKeyCommandInput, + DeletePublicKeyCommandOutput, + IVSRealTimeClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: IVSRealTimeClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonInteractiveVideoServiceRealTime", "DeletePublicKey", {}) + .n("IVSRealTimeClient", "DeletePublicKeyCommand") + .f(void 0, void 0) + .ser(se_DeletePublicKeyCommand) + .de(de_DeletePublicKeyCommand) + .build() {} diff --git a/clients/client-ivs-realtime/src/commands/GetPublicKeyCommand.ts b/clients/client-ivs-realtime/src/commands/GetPublicKeyCommand.ts new file mode 100644 index 000000000000..fd1cac24c4a0 --- /dev/null +++ b/clients/client-ivs-realtime/src/commands/GetPublicKeyCommand.ts @@ -0,0 +1,99 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { IVSRealTimeClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../IVSRealTimeClient"; +import { GetPublicKeyRequest, GetPublicKeyResponse } from "../models/models_0"; +import { de_GetPublicKeyCommand, se_GetPublicKeyCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link GetPublicKeyCommand}. + */ +export interface GetPublicKeyCommandInput extends GetPublicKeyRequest {} +/** + * @public + * + * The output of {@link GetPublicKeyCommand}. + */ +export interface GetPublicKeyCommandOutput extends GetPublicKeyResponse, __MetadataBearer {} + +/** + *Gets information for the specified public key.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { IVSRealTimeClient, GetPublicKeyCommand } from "@aws-sdk/client-ivs-realtime"; // ES Modules import + * // const { IVSRealTimeClient, GetPublicKeyCommand } = require("@aws-sdk/client-ivs-realtime"); // CommonJS import + * const client = new IVSRealTimeClient(config); + * const input = { // GetPublicKeyRequest + * arn: "STRING_VALUE", // required + * }; + * const command = new GetPublicKeyCommand(input); + * const response = await client.send(command); + * // { // GetPublicKeyResponse + * // publicKey: { // PublicKey + * // arn: "STRING_VALUE", + * // name: "STRING_VALUE", + * // publicKeyMaterial: "STRING_VALUE", + * // fingerprint: "STRING_VALUE", + * // tags: { // Tags + * // "Base exception class for all service exceptions from IVSRealTime service.
+ * + * @public + */ +export class GetPublicKeyCommand extends $Command + .classBuilder< + GetPublicKeyCommandInput, + GetPublicKeyCommandOutput, + IVSRealTimeClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: IVSRealTimeClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonInteractiveVideoServiceRealTime", "GetPublicKey", {}) + .n("IVSRealTimeClient", "GetPublicKeyCommand") + .f(void 0, void 0) + .ser(se_GetPublicKeyCommand) + .de(de_GetPublicKeyCommand) + .build() {} diff --git a/clients/client-ivs-realtime/src/commands/GetStageCommand.ts b/clients/client-ivs-realtime/src/commands/GetStageCommand.ts index 19126d2c92d4..bcfe62e49ea7 100644 --- a/clients/client-ivs-realtime/src/commands/GetStageCommand.ts +++ b/clients/client-ivs-realtime/src/commands/GetStageCommand.ts @@ -54,6 +54,10 @@ export interface GetStageCommandOutput extends GetStageResponse, __MetadataBeare * // "STRING_VALUE", * // ], * // }, + * // endpoints: { // StageEndpoints + * // events: "STRING_VALUE", + * // whip: "STRING_VALUE", + * // }, * // }, * // }; * diff --git a/clients/client-ivs-realtime/src/commands/ImportPublicKeyCommand.ts b/clients/client-ivs-realtime/src/commands/ImportPublicKeyCommand.ts new file mode 100644 index 000000000000..7a95a3598a0e --- /dev/null +++ b/clients/client-ivs-realtime/src/commands/ImportPublicKeyCommand.ts @@ -0,0 +1,109 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { IVSRealTimeClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../IVSRealTimeClient"; +import { ImportPublicKeyRequest, ImportPublicKeyResponse } from "../models/models_0"; +import { de_ImportPublicKeyCommand, se_ImportPublicKeyCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link ImportPublicKeyCommand}. + */ +export interface ImportPublicKeyCommandInput extends ImportPublicKeyRequest {} +/** + * @public + * + * The output of {@link ImportPublicKeyCommand}. + */ +export interface ImportPublicKeyCommandOutput extends ImportPublicKeyResponse, __MetadataBearer {} + +/** + *Import a public key to be used for signing stage participant tokens.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { IVSRealTimeClient, ImportPublicKeyCommand } from "@aws-sdk/client-ivs-realtime"; // ES Modules import + * // const { IVSRealTimeClient, ImportPublicKeyCommand } = require("@aws-sdk/client-ivs-realtime"); // CommonJS import + * const client = new IVSRealTimeClient(config); + * const input = { // ImportPublicKeyRequest + * publicKeyMaterial: "STRING_VALUE", // required + * name: "STRING_VALUE", + * tags: { // Tags + * "Base exception class for all service exceptions from IVSRealTime service.
+ * + * @public + */ +export class ImportPublicKeyCommand extends $Command + .classBuilder< + ImportPublicKeyCommandInput, + ImportPublicKeyCommandOutput, + IVSRealTimeClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: IVSRealTimeClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonInteractiveVideoServiceRealTime", "ImportPublicKey", {}) + .n("IVSRealTimeClient", "ImportPublicKeyCommand") + .f(void 0, void 0) + .ser(se_ImportPublicKeyCommand) + .de(de_ImportPublicKeyCommand) + .build() {} diff --git a/clients/client-ivs-realtime/src/commands/ListPublicKeysCommand.ts b/clients/client-ivs-realtime/src/commands/ListPublicKeysCommand.ts new file mode 100644 index 000000000000..d499801d9ef3 --- /dev/null +++ b/clients/client-ivs-realtime/src/commands/ListPublicKeysCommand.ts @@ -0,0 +1,98 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { IVSRealTimeClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../IVSRealTimeClient"; +import { ListPublicKeysRequest, ListPublicKeysResponse } from "../models/models_0"; +import { de_ListPublicKeysCommand, se_ListPublicKeysCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link ListPublicKeysCommand}. + */ +export interface ListPublicKeysCommandInput extends ListPublicKeysRequest {} +/** + * @public + * + * The output of {@link ListPublicKeysCommand}. + */ +export interface ListPublicKeysCommandOutput extends ListPublicKeysResponse, __MetadataBearer {} + +/** + *Gets summary information about all public keys in your account, in the AWS region where the API request is processed.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { IVSRealTimeClient, ListPublicKeysCommand } from "@aws-sdk/client-ivs-realtime"; // ES Modules import + * // const { IVSRealTimeClient, ListPublicKeysCommand } = require("@aws-sdk/client-ivs-realtime"); // CommonJS import + * const client = new IVSRealTimeClient(config); + * const input = { // ListPublicKeysRequest + * nextToken: "STRING_VALUE", + * maxResults: Number("int"), + * }; + * const command = new ListPublicKeysCommand(input); + * const response = await client.send(command); + * // { // ListPublicKeysResponse + * // publicKeys: [ // PublicKeyList // required + * // { // PublicKeySummary + * // arn: "STRING_VALUE", + * // name: "STRING_VALUE", + * // tags: { // Tags + * // "Base exception class for all service exceptions from IVSRealTime service.
+ * + * @public + */ +export class ListPublicKeysCommand extends $Command + .classBuilder< + ListPublicKeysCommandInput, + ListPublicKeysCommandOutput, + IVSRealTimeClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: IVSRealTimeClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonInteractiveVideoServiceRealTime", "ListPublicKeys", {}) + .n("IVSRealTimeClient", "ListPublicKeysCommand") + .f(void 0, void 0) + .ser(se_ListPublicKeysCommand) + .de(de_ListPublicKeysCommand) + .build() {} diff --git a/clients/client-ivs-realtime/src/commands/UpdateStageCommand.ts b/clients/client-ivs-realtime/src/commands/UpdateStageCommand.ts index 58500829ab3e..3e428e963e40 100644 --- a/clients/client-ivs-realtime/src/commands/UpdateStageCommand.ts +++ b/clients/client-ivs-realtime/src/commands/UpdateStageCommand.ts @@ -61,6 +61,10 @@ export interface UpdateStageCommandOutput extends UpdateStageResponse, __Metadat * // "STRING_VALUE", * // ], * // }, + * // endpoints: { // StageEndpoints + * // events: "STRING_VALUE", + * // whip: "STRING_VALUE", + * // }, * // }, * // }; * diff --git a/clients/client-ivs-realtime/src/commands/index.ts b/clients/client-ivs-realtime/src/commands/index.ts index d3dc615b6555..efbbd4ae7397 100644 --- a/clients/client-ivs-realtime/src/commands/index.ts +++ b/clients/client-ivs-realtime/src/commands/index.ts @@ -4,19 +4,23 @@ export * from "./CreateParticipantTokenCommand"; export * from "./CreateStageCommand"; export * from "./CreateStorageConfigurationCommand"; export * from "./DeleteEncoderConfigurationCommand"; +export * from "./DeletePublicKeyCommand"; export * from "./DeleteStageCommand"; export * from "./DeleteStorageConfigurationCommand"; export * from "./DisconnectParticipantCommand"; export * from "./GetCompositionCommand"; export * from "./GetEncoderConfigurationCommand"; export * from "./GetParticipantCommand"; +export * from "./GetPublicKeyCommand"; export * from "./GetStageCommand"; export * from "./GetStageSessionCommand"; export * from "./GetStorageConfigurationCommand"; +export * from "./ImportPublicKeyCommand"; export * from "./ListCompositionsCommand"; export * from "./ListEncoderConfigurationsCommand"; export * from "./ListParticipantEventsCommand"; export * from "./ListParticipantsCommand"; +export * from "./ListPublicKeysCommand"; export * from "./ListStageSessionsCommand"; export * from "./ListStagesCommand"; export * from "./ListStorageConfigurationsCommand"; diff --git a/clients/client-ivs-realtime/src/index.ts b/clients/client-ivs-realtime/src/index.ts index 4ee3f25bca60..4bceace9156e 100644 --- a/clients/client-ivs-realtime/src/index.ts +++ b/clients/client-ivs-realtime/src/index.ts @@ -1,48 +1,46 @@ // smithy-typescript generated code /* eslint-disable */ /** - *- * Introduction - *
- *The Amazon Interactive Video Service (IVS) real-time API is REST compatible, using a standard HTTP + *
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:
+ *+ * Key Concepts + *
*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.
+ *+ * Stage — A virtual space where participants can exchange video in real time.
*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.
+ *+ * Participant token — A token that authenticates a participant when they join a stage.
*Server-side composition: A composition controls the look of the outputs, - * including how participants are positioned in the video.
+ *+ * 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.
*- * Resources - *
- *The following resources contain information about your IVS live stream (see Getting Started with Amazon IVS Real-Time Streaming):
+ *For server-side composition:
*- * Stage — A stage is a virtual space where participants can exchange video in real time.
+ * 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. + *+ * Composition — Controls the look of the outputs, + * including how participants are positioned in the video.
*For more information about your IVS live stream, also see Getting Started with Amazon IVS Real-Time Streaming.
** Tagging *
@@ -58,157 +56,6 @@ *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.
- *Object specifying an auto-participant-recording configuration.
+ *Object specifying a configuration for individual participant recording.
* @public */ export interface AutoParticipantRecordingConfiguration { /** - *ARN of the StorageConfiguration resource to use for auto participant recording. Default: "" (empty string, no storage configuration is specified). Individual participant recording cannot be started unless a storage configuration is specified, when a Stage is created or updated.
+ *ARN of the StorageConfiguration resource to use for individual participant recording. Default: ""
(empty string, no storage configuration is specified). Individual participant recording cannot be started unless a storage configuration is specified, when a Stage is created or updated.
Auto participant recording configuration object attached to the stage.
+ *Configuration object for individual participant recording, to attach to the new stage.
* @public */ autoParticipantRecordingConfiguration?: AutoParticipantRecordingConfiguration; } +/** + *Summary information about various endpoints for a stage.
+ * @public + */ +export interface StageEndpoints { + /** + *Events endpoint.
+ * @public + */ + events?: string; + + /** + *WHIP endpoint.
+ * @public + */ + whip?: string; +} + /** *Object specifying a stage.
* @public @@ -560,10 +578,16 @@ export interface Stage { tags?: RecordAuto-participant-recording configuration object attached to the stage.
+ *Configuration object for individual participant recording, attached to the stage.
* @public */ autoParticipantRecordingConfiguration?: AutoParticipantRecordingConfiguration; + + /** + *Summary information about various endpoints for a stage.
+ * @public + */ + endpoints?: StageEndpoints; } /** @@ -685,6 +709,22 @@ export interface DeleteEncoderConfigurationRequest { */ export interface DeleteEncoderConfigurationResponse {} +/** + * @public + */ +export interface DeletePublicKeyRequest { + /** + *ARN of the public key to be deleted.
+ * @public + */ + arn: string | undefined; +} + +/** + * @public + */ +export interface DeletePublicKeyResponse {} + /** * @public */ @@ -983,7 +1023,7 @@ export interface GridConfiguration { /** *This attribute name identifies the featured slot. A participant with this attribute set
* to "true"
(as a string value) in ParticipantTokenConfiguration is placed in the featured
- * slot.
""
(no featured participant).
* @public
*/
featuredParticipantAttribute?: string;
@@ -995,15 +1035,16 @@ export interface GridConfiguration {
omitStoppedVideo?: boolean;
/**
- * Sets the non-featured participant display mode. Default: VIDEO
.
Sets the non-featured participant display mode, to control the aspect ratio of video tiles. VIDEO
is 16:9, SQUARE
is 1:1, and PORTRAIT
is 3:4. Default: VIDEO
.
Defines how video fits within the participant tile. When not set,
- * videoFillMode
defaults to COVER
fill mode for participants in the grid
- * and to CONTAIN
fill mode for featured participants.
Defines how video content fits within the participant tile: FILL
(stretched), COVER
(cropped),
+ * or CONTAIN
(letterboxed). When not set,
+ * videoFillMode
defaults to COVER
fill mode for participants in the grid
+ * and to CONTAIN
fill mode for featured participants.
This attribute name identifies the featured slot. A participant with this attribute set
* to "true"
(as a string value) in ParticipantTokenConfiguration is placed in the featured
- * slot.
""
(no featured participant).
* @public
*/
featuredParticipantAttribute?: string;
@@ -1067,8 +1108,8 @@ export interface PipConfiguration {
omitStoppedVideo?: boolean;
/**
- * Defines how video fits within the participant tile. Default: COVER
.
- *
Defines how video content fits within the participant tile: FILL
(stretched),
+ * COVER
(cropped), or CONTAIN
(letterboxed). Default: COVER
.
Identifies the PiP slot. A participant with this attribute set + *
Specifies the participant for the PiP window. A participant with this attribute set
* to "true"
(as a string value) in ParticipantTokenConfiguration
- * is placed in the PiP slot.
""
(no PiP participant).
* @public
*/
pipParticipantAttribute?: string;
/**
- * Defines PiP behavior when all participants have left. Default: STATIC
.
Defines PiP behavior when all participants have left: STATIC
(maintains original position/size) or DYNAMIC
(expands to full composition). Default: STATIC
.
Name of the S3 bucket to where the participant is being recorded, if individual participant recording is enabled, or "" (empty string), if recording is not enabled.
+ *Name of the S3 bucket to where the participant is being recorded, if individual participant recording is enabled, or ""
(empty string), if recording is not enabled.
S3 prefix of the S3 bucket to where the participant is being recorded, if individual participant recording is enabled, or "" (empty string), if recording is not enabled.
+ *S3 prefix of the S3 bucket where the participant is being recorded, if individual participant recording is enabled, or ""
(empty string), if recording is not enabled.
Participant’s recording state.
+ *The participant’s recording state.
* @public */ recordingState?: ParticipantRecordingState; @@ -1421,6 +1462,68 @@ export interface GetParticipantResponse { participant?: Participant; } +/** + * @public + */ +export interface GetPublicKeyRequest { + /** + *ARN of the public key for which the information is to be retrieved.
+ * @public + */ + arn: string | undefined; +} + +/** + *Object specifying a public key used to sign stage participant tokens.
+ * @public + */ +export interface PublicKey { + /** + *Public key ARN.
+ * @public + */ + arn?: string; + + /** + *Public key name.
+ * @public + */ + name?: string; + + /** + *Public key material.
+ * @public + */ + publicKeyMaterial?: string; + + /** + *The public key fingerprint, a short string used to identify or verify the full public key.
+ * @public + */ + fingerprint?: string; + + /** + *Tags attached to the resource. Array of maps, each of the form string:string
+ * (key:value)
. See Tagging AWS
+ * Resources for details, including restrictions that apply to tags and "Tag naming
+ * limits and requirements"; Amazon IVS has no constraints on tags beyond what is documented
+ * there.
The public key that is returned.
+ * @public + */ + publicKey?: PublicKey; +} + /** * @public */ @@ -1521,6 +1624,44 @@ export interface GetStorageConfigurationResponse { storageConfiguration?: StorageConfiguration; } +/** + * @public + */ +export interface ImportPublicKeyRequest { + /** + *The content of the public key to be imported.
+ * @public + */ + publicKeyMaterial: string | undefined; + + /** + *Name of the public key to be imported.
+ * @public + */ + name?: string; + + /** + *Tags attached to the resource. Array of maps, each of the form string:string
+ * (key:value)
. See Tagging AWS
+ * Resources for details, including restrictions that apply to tags and "Tag naming
+ * limits and requirements"; Amazon IVS has no constraints on tags beyond what is documented
+ * there.
The public key that was imported.
+ * @public + */ + publicKey?: PublicKey; +} + /** * @public */ @@ -1979,7 +2120,7 @@ export interface ParticipantSummary { published?: boolean; /** - *Participant’s recording state.
+ *The participant’s recording state.
* @public */ recordingState?: ParticipantRecordingState; @@ -2003,6 +2144,68 @@ export interface ListParticipantsResponse { nextToken?: string; } +/** + * @public + */ +export interface ListPublicKeysRequest { + /** + *The first public key to retrieve. This is used for pagination; see the nextToken
response field.
Maximum number of results to return. Default: 50.
+ * @public + */ + maxResults?: number; +} + +/** + *Summary information about a public key.
+ * @public + */ +export interface PublicKeySummary { + /** + *Public key ARN.
+ * @public + */ + arn?: string; + + /** + *Public key name.
+ * @public + */ + name?: string; + + /** + *Tags attached to the resource. Array of maps, each of the form string:string
+ * (key:value)
. See Tagging AWS
+ * Resources for details, including restrictions that apply to tags and "Tag naming
+ * limits and requirements"; Amazon IVS has no constraints on tags beyond what is documented
+ * there.
List of the matching public keys (summary information only).
+ * @public + */ + publicKeys: PublicKeySummary[] | undefined; + + /** + *If there are more public keys than maxResults
, use nextToken
in the request to get the next set.
Auto-participant-recording configuration object to attach to the stage. - * Auto-participant-recording configuration cannot be updated while recording is active.
+ *Configuration object for individual participant recording, to attach to the stage. Note that this cannot be updated while recording is active.
* @public */ autoParticipantRecordingConfiguration?: AutoParticipantRecordingConfiguration; diff --git a/clients/client-ivs-realtime/src/pagination/ListPublicKeysPaginator.ts b/clients/client-ivs-realtime/src/pagination/ListPublicKeysPaginator.ts new file mode 100644 index 000000000000..976e82abfda3 --- /dev/null +++ b/clients/client-ivs-realtime/src/pagination/ListPublicKeysPaginator.ts @@ -0,0 +1,24 @@ +// smithy-typescript generated code +import { createPaginator } from "@smithy/core"; +import { Paginator } from "@smithy/types"; + +import { + ListPublicKeysCommand, + ListPublicKeysCommandInput, + ListPublicKeysCommandOutput, +} from "../commands/ListPublicKeysCommand"; +import { IVSRealTimeClient } from "../IVSRealTimeClient"; +import { IVSRealTimePaginationConfiguration } from "./Interfaces"; + +/** + * @public + */ +export const paginateListPublicKeys: ( + config: IVSRealTimePaginationConfiguration, + input: ListPublicKeysCommandInput, + ...rest: any[] +) => Paginator\n Introduction\n
\nThe Amazon Interactive Video Service (IVS) real-time API is REST compatible, using a standard HTTP \n\t API and an AWS EventBridge event stream for responses. JSON is used for both requests and responses, \n\t including errors.\n
\nTerminology:
\nA stage is a virtual space where participants can exchange video in real time.
\nA participant token is a token that authenticates a participant when they join a stage.
\nA participant object represents participants (people) in the stage and\n contains information about them. When a token is created, it includes a participant ID;\n when a participant uses that token to join a stage, the participant is associated with\n that participant ID. There is a 1:1 mapping between participant tokens and\n participants.
\nServer-side composition: The composition process composites participants\n of a stage into a single video and forwards it to a set of outputs (e.g., IVS channels).\n Composition endpoints support this process.
\nServer-side composition: A composition controls the look of the outputs,\n including how participants are positioned in the video.
\n\n Resources\n
\nThe following resources contain information about your IVS live stream (see Getting Started with Amazon IVS Real-Time Streaming):
\n\n Stage — A stage is a virtual space where participants can exchange video in real time.
\n\n Tagging\n
\nA tag is a metadata label that you assign to an AWS resource. A tag\n comprises a key and a value, both set by you. For\n example, you might set a tag as topic:nature
to label a particular video\n category. See Tagging AWS Resources for more information, including restrictions that apply to\n tags and \"Tag naming limits and requirements\"; Amazon IVS stages has no service-specific\n constraints beyond what is documented there.
Tags can help you identify and organize your AWS resources. For example, you can use the\n same tag for different resources to indicate that they are related. You can also use tags to\n manage access (see Access Tags).
\nThe Amazon IVS real-time API has these tag-related endpoints: TagResource, UntagResource, and\n ListTagsForResource. The following resource supports tagging: Stage.
\nAt most 50 tags can be applied to a resource.
\n\n Stages Endpoints\n
\n\n CreateParticipantToken — Creates an additional token for a specified stage. This can be done after stage creation or when tokens expire.
\n\n CreateStage — Creates a new stage (and optionally participant tokens).
\n\n DeleteStage — Shuts down and deletes the specified stage (disconnecting all participants).
\n\n DisconnectParticipant — Disconnects a specified participant and revokes the participant permanently from a specified stage.
\n\n GetParticipant — Gets information about the specified\n participant token.
\n\n GetStage — Gets information for the specified stage.
\n\n GetStageSession — Gets information for the specified stage\n session.
\n\n ListParticipantEvents — Lists events for a specified\n participant that occurred during a specified stage session.
\n\n ListParticipants — Lists all participants in a specified stage\n session.
\n\n ListStages — Gets summary information about all stages in your account, in the AWS region where the API request is processed.
\n\n ListStageSessions — Gets all sessions for a specified stage.
\n\n UpdateStage — Updates a stage’s configuration.
\n\n Composition Endpoints\n
\n\n GetComposition — Gets information about the specified\n Composition resource.
\n\n ListCompositions — Gets summary information about all\n Compositions in your account, in the AWS region where the API request is processed.
\n\n StartComposition — Starts a Composition from a stage based on\n the configuration provided in the request.
\n\n StopComposition — Stops and deletes a Composition resource.\n Any broadcast from the Composition resource is stopped.
\n\n EncoderConfiguration Endpoints\n
\n\n CreateEncoderConfiguration — Creates an EncoderConfiguration object.
\n\n DeleteEncoderConfiguration — Deletes an EncoderConfiguration\n resource. Ensures that no Compositions are using this template; otherwise, returns an\n error.
\n\n GetEncoderConfiguration — Gets information about the specified\n EncoderConfiguration resource.
\n\n ListEncoderConfigurations — Gets summary information about all\n EncoderConfigurations in your account, in the AWS region where the API request is\n processed.
\n\n StorageConfiguration Endpoints\n
\n\n CreateStorageConfiguration — Creates a new storage configuration, used to enable \n\t\trecording to Amazon S3.
\n\n DeleteStorageConfiguration — Deletes the storage configuration for the specified ARN.
\n\n GetStorageConfiguration — Gets the storage configuration for the specified ARN.
\n\n ListStorageConfigurations — Gets summary information about all storage configurations in your \n\t\taccount, in the AWS region where the API request is processed.
\n\n Tags Endpoints\n
\n\n ListTagsForResource — Gets information about AWS tags for the\n specified ARN.
\n\n TagResource — Adds or updates tags for the AWS resource with\n the specified ARN.
\n\n UntagResource — Removes tags from the resource with the\n specified ARN.
\nThe Amazon Interactive Video Service (IVS) real-time API is REST compatible, using a standard HTTP \n\t API and an AWS EventBridge event stream for responses. JSON is used for both requests and responses, \n\t including errors.\n
\n\n Key Concepts\n
\n\n Stage — A virtual space where participants can exchange video in real time.
\n\n Participant token — A token that authenticates a participant when they join a stage.
\n\n Participant object — Represents participants (people) in the stage and\n contains information about them. When a token is created, it includes a participant ID;\n when a participant uses that token to join a stage, the participant is associated with\n that participant ID. There is a 1:1 mapping between participant tokens and\n participants.
\nFor server-side composition:
\n\n Composition process — Composites participants\n of a stage into a single video and forwards it to a set of outputs (e.g., IVS channels).\n Composition endpoints support this process.
\n\n Composition — Controls the look of the outputs,\n including how participants are positioned in the video.
\nFor more information about your IVS live stream, also see Getting Started with Amazon IVS Real-Time Streaming.
\n\n Tagging\n
\nA tag is a metadata label that you assign to an AWS resource. A tag\n comprises a key and a value, both set by you. For\n example, you might set a tag as topic:nature
to label a particular video\n category. See Tagging AWS Resources for more information, including restrictions that apply to\n tags and \"Tag naming limits and requirements\"; Amazon IVS stages has no service-specific\n constraints beyond what is documented there.
Tags can help you identify and organize your AWS resources. For example, you can use the\n same tag for different resources to indicate that they are related. You can also use tags to\n manage access (see Access Tags).
\nThe Amazon IVS real-time API has these tag-related endpoints: TagResource, UntagResource, and\n ListTagsForResource. The following resource supports tagging: Stage.
\nAt most 50 tags can be applied to a resource.
", "smithy.api#title": "Amazon Interactive Video Service RealTime", "smithy.rules#endpointRuleSet": { "version": "1.0", @@ -818,7 +830,7 @@ "storageConfigurationArn": { "target": "com.amazonaws.ivsrealtime#AutoParticipantRecordingStorageConfigurationArn", "traits": { - "smithy.api#documentation": "ARN of the StorageConfiguration resource to use for auto participant recording. Default: \"\" (empty string, no storage configuration is specified). Individual participant recording cannot be started unless a storage configuration is specified, when a Stage is created or updated.
", + "smithy.api#documentation": "ARN of the StorageConfiguration resource to use for individual participant recording. Default: \"\"
(empty string, no storage configuration is specified). Individual participant recording cannot be started unless a storage configuration is specified, when a Stage is created or updated.
Object specifying an auto-participant-recording configuration.
" + "smithy.api#documentation": "Object specifying a configuration for individual participant recording.
" } }, "com.amazonaws.ivsrealtime#AutoParticipantRecordingStorageConfigurationArn": { @@ -1280,7 +1292,7 @@ "autoParticipantRecordingConfiguration": { "target": "com.amazonaws.ivsrealtime#AutoParticipantRecordingConfiguration", "traits": { - "smithy.api#documentation": "Auto participant recording configuration object attached to the stage.
" + "smithy.api#documentation": "Configuration object for individual participant recording, to attach to the new stage.
" } } } @@ -1440,6 +1452,61 @@ "smithy.api#output": {} } }, + "com.amazonaws.ivsrealtime#DeletePublicKey": { + "type": "operation", + "input": { + "target": "com.amazonaws.ivsrealtime#DeletePublicKeyRequest" + }, + "output": { + "target": "com.amazonaws.ivsrealtime#DeletePublicKeyResponse" + }, + "errors": [ + { + "target": "com.amazonaws.ivsrealtime#AccessDeniedException" + }, + { + "target": "com.amazonaws.ivsrealtime#ConflictException" + }, + { + "target": "com.amazonaws.ivsrealtime#PendingVerification" + }, + { + "target": "com.amazonaws.ivsrealtime#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.ivsrealtime#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "Deletes the specified public key used to sign stage participant tokens. \n\t This invalidates future participant tokens generated using the key pair’s private key.\n
", + "smithy.api#http": { + "method": "POST", + "uri": "/DeletePublicKey" + } + } + }, + "com.amazonaws.ivsrealtime#DeletePublicKeyRequest": { + "type": "structure", + "members": { + "arn": { + "target": "com.amazonaws.ivsrealtime#PublicKeyArn", + "traits": { + "smithy.api#documentation": "ARN of the public key to be deleted.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ivsrealtime#DeletePublicKeyResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.ivsrealtime#DeleteStage": { "type": "operation", "input": { @@ -2232,6 +2299,63 @@ "smithy.api#output": {} } }, + "com.amazonaws.ivsrealtime#GetPublicKey": { + "type": "operation", + "input": { + "target": "com.amazonaws.ivsrealtime#GetPublicKeyRequest" + }, + "output": { + "target": "com.amazonaws.ivsrealtime#GetPublicKeyResponse" + }, + "errors": [ + { + "target": "com.amazonaws.ivsrealtime#AccessDeniedException" + }, + { + "target": "com.amazonaws.ivsrealtime#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.ivsrealtime#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "Gets information for the specified public key.
", + "smithy.api#http": { + "method": "POST", + "uri": "/GetPublicKey" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.ivsrealtime#GetPublicKeyRequest": { + "type": "structure", + "members": { + "arn": { + "target": "com.amazonaws.ivsrealtime#PublicKeyArn", + "traits": { + "smithy.api#documentation": "ARN of the public key for which the information is to be retrieved.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ivsrealtime#GetPublicKeyResponse": { + "type": "structure", + "members": { + "publicKey": { + "target": "com.amazonaws.ivsrealtime#PublicKey", + "traits": { + "smithy.api#documentation": "The public key that is returned.
" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.ivsrealtime#GetStage": { "type": "operation", "input": { @@ -2419,7 +2543,7 @@ "featuredParticipantAttribute": { "target": "com.amazonaws.ivsrealtime#AttributeKey", "traits": { - "smithy.api#documentation": "This attribute name identifies the featured slot. A participant with this attribute set\n to \"true\"
(as a string value) in ParticipantTokenConfiguration is placed in the featured\n slot.
This attribute name identifies the featured slot. A participant with this attribute set\n to \"true\"
(as a string value) in ParticipantTokenConfiguration is placed in the featured\n slot. Default: \"\"
(no featured participant).
Sets the non-featured participant display mode. Default: VIDEO
.
Sets the non-featured participant display mode, to control the aspect ratio of video tiles. VIDEO
is 16:9, SQUARE
is 1:1, and PORTRAIT
is 3:4. Default: VIDEO
.
Defines how video fits within the participant tile. When not set, \n\t videoFillMode
defaults to COVER
fill mode for participants in the grid \n\t and to CONTAIN
fill mode for featured participants.
Defines how video content fits within the participant tile: FILL
(stretched), COVER
(cropped),\n or CONTAIN
(letterboxed). When not set, \n videoFillMode
defaults to COVER
fill mode for participants in the grid \n and to CONTAIN
fill mode for featured participants.
Import a public key to be used for signing stage participant tokens.
", + "smithy.api#http": { + "method": "POST", + "uri": "/ImportPublicKey" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.ivsrealtime#ImportPublicKeyRequest": { + "type": "structure", + "members": { + "publicKeyMaterial": { + "target": "com.amazonaws.ivsrealtime#PublicKeyMaterial", + "traits": { + "smithy.api#documentation": "The content of the public key to be imported.
", + "smithy.api#required": {} + } + }, + "name": { + "target": "com.amazonaws.ivsrealtime#PublicKeyName", + "traits": { + "smithy.api#documentation": "Name of the public key to be imported.
" + } + }, + "tags": { + "target": "com.amazonaws.ivsrealtime#Tags", + "traits": { + "smithy.api#documentation": "Tags attached to the resource. Array of maps, each of the form string:string\n (key:value)
. See Tagging AWS\n Resources for details, including restrictions that apply to tags and \"Tag naming\n limits and requirements\"; Amazon IVS has no constraints on tags beyond what is documented\n there.
The public key that was imported.
" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.ivsrealtime#InternalServerException": { "type": "structure", "members": { @@ -2881,6 +3080,78 @@ "smithy.api#output": {} } }, + "com.amazonaws.ivsrealtime#ListPublicKeys": { + "type": "operation", + "input": { + "target": "com.amazonaws.ivsrealtime#ListPublicKeysRequest" + }, + "output": { + "target": "com.amazonaws.ivsrealtime#ListPublicKeysResponse" + }, + "errors": [ + { + "target": "com.amazonaws.ivsrealtime#AccessDeniedException" + }, + { + "target": "com.amazonaws.ivsrealtime#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "Gets summary information about all public keys in your account, in the AWS region where the API request is processed.
", + "smithy.api#http": { + "method": "POST", + "uri": "/ListPublicKeys" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "publicKeys" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.ivsrealtime#ListPublicKeysRequest": { + "type": "structure", + "members": { + "nextToken": { + "target": "com.amazonaws.ivsrealtime#PaginationToken", + "traits": { + "smithy.api#documentation": "The first public key to retrieve. This is used for pagination; see the nextToken
response field.
Maximum number of results to return. Default: 50.
" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ivsrealtime#ListPublicKeysResponse": { + "type": "structure", + "members": { + "publicKeys": { + "target": "com.amazonaws.ivsrealtime#PublicKeyList", + "traits": { + "smithy.api#documentation": "List of the matching public keys (summary information only).
", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "com.amazonaws.ivsrealtime#PaginationToken", + "traits": { + "smithy.api#documentation": "If there are more public keys than maxResults
, use nextToken
in the request to get the next set.
Name of the S3 bucket to where the participant is being recorded, if individual participant recording is enabled, or \"\" (empty string), if recording is not enabled.
" + "smithy.api#documentation": "Name of the S3 bucket to where the participant is being recorded, if individual participant recording is enabled, or \"\"
(empty string), if recording is not enabled.
S3 prefix of the S3 bucket to where the participant is being recorded, if individual participant recording is enabled, or \"\" (empty string), if recording is not enabled.
" + "smithy.api#documentation": "S3 prefix of the S3 bucket where the participant is being recorded, if individual participant recording is enabled, or \"\"
(empty string), if recording is not enabled.
Participant’s recording state.
" + "smithy.api#documentation": "The participant’s recording state.
" } } }, @@ -3530,7 +3810,7 @@ "recordingState": { "target": "com.amazonaws.ivsrealtime#ParticipantRecordingState", "traits": { - "smithy.api#documentation": "Participant’s recording state.
" + "smithy.api#documentation": "The participant’s recording state.
" } } }, @@ -3746,7 +4026,7 @@ "featuredParticipantAttribute": { "target": "com.amazonaws.ivsrealtime#AttributeKey", "traits": { - "smithy.api#documentation": "This attribute name identifies the featured slot. A participant with this attribute set\n to \"true\"
(as a string value) in ParticipantTokenConfiguration is placed in the featured\n slot.
This attribute name identifies the featured slot. A participant with this attribute set\n to \"true\"
(as a string value) in ParticipantTokenConfiguration is placed in the featured\n slot. Default: \"\"
(no featured participant).
Defines how video fits within the participant tile. Default: COVER
.\n
Defines how video content fits within the participant tile: FILL
(stretched), \n\t COVER
(cropped), or CONTAIN
(letterboxed). Default: COVER
.
Identifies the PiP slot. A participant with this attribute set\n to \"true\"
(as a string value) in ParticipantTokenConfiguration \n\t\t is placed in the PiP slot.
Specifies the participant for the PiP window. A participant with this attribute set\n to \"true\"
(as a string value) in ParticipantTokenConfiguration \n\t is placed in the PiP slot. Default: \"\"
(no PiP participant).
Defines PiP behavior when all participants have left. Default: STATIC
.
Defines PiP behavior when all participants have left: STATIC
(maintains original position/size) or DYNAMIC
(expands to full composition). Default: STATIC
.
Public key ARN.
" + } + }, + "name": { + "target": "com.amazonaws.ivsrealtime#PublicKeyName", + "traits": { + "smithy.api#documentation": "Public key name.
" + } + }, + "publicKeyMaterial": { + "target": "com.amazonaws.ivsrealtime#PublicKeyMaterial", + "traits": { + "smithy.api#documentation": "Public key material.
" + } + }, + "fingerprint": { + "target": "com.amazonaws.ivsrealtime#PublicKeyFingerprint", + "traits": { + "smithy.api#documentation": "The public key fingerprint, a short string used to identify or verify the full public key.
" + } + }, + "tags": { + "target": "com.amazonaws.ivsrealtime#Tags", + "traits": { + "smithy.api#documentation": "Tags attached to the resource. Array of maps, each of the form string:string\n (key:value)
. See Tagging AWS\n Resources for details, including restrictions that apply to tags and \"Tag naming\n limits and requirements\"; Amazon IVS has no constraints on tags beyond what is documented\n there.
Object specifying a public key used to sign stage participant tokens.
" + } + }, + "com.amazonaws.ivsrealtime#PublicKeyArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^arn:aws:ivs:[a-z0-9-]+:[0-9]+:public-key/[a-zA-Z0-9-]+$" + } + }, + "com.amazonaws.ivsrealtime#PublicKeyFingerprint": { + "type": "string" + }, + "com.amazonaws.ivsrealtime#PublicKeyList": { + "type": "list", + "member": { + "target": "com.amazonaws.ivsrealtime#PublicKeySummary" + } + }, + "com.amazonaws.ivsrealtime#PublicKeyMaterial": { + "type": "string", + "traits": { + "smithy.api#pattern": "-----BEGIN PUBLIC KEY-----\\r?\\n([a-zA-Z0-9+/=\\r\\n]+)\\r?\\n-----END PUBLIC KEY-----(\\r?\\n)?" + } + }, + "com.amazonaws.ivsrealtime#PublicKeyName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 128 + }, + "smithy.api#pattern": "^[a-zA-Z0-9-_]*$" + } + }, + "com.amazonaws.ivsrealtime#PublicKeySummary": { + "type": "structure", + "members": { + "arn": { + "target": "com.amazonaws.ivsrealtime#PublicKeyArn", + "traits": { + "smithy.api#documentation": "Public key ARN.
" + } + }, + "name": { + "target": "com.amazonaws.ivsrealtime#PublicKeyName", + "traits": { + "smithy.api#documentation": "Public key name.
" + } + }, + "tags": { + "target": "com.amazonaws.ivsrealtime#Tags", + "traits": { + "smithy.api#documentation": "Tags attached to the resource. Array of maps, each of the form string:string\n (key:value)
. See Tagging AWS\n Resources for details, including restrictions that apply to tags and \"Tag naming\n limits and requirements\"; Amazon IVS has no constraints on tags beyond what is documented\n there.
Summary information about a public key.
" + } + }, "com.amazonaws.ivsrealtime#Published": { "type": "boolean", "traits": { @@ -4037,7 +4416,13 @@ "autoParticipantRecordingConfiguration": { "target": "com.amazonaws.ivsrealtime#AutoParticipantRecordingConfiguration", "traits": { - "smithy.api#documentation": "Auto-participant-recording configuration object attached to the stage.
" + "smithy.api#documentation": "Configuration object for individual participant recording, attached to the stage.
" + } + }, + "endpoints": { + "target": "com.amazonaws.ivsrealtime#StageEndpoints", + "traits": { + "smithy.api#documentation": "Summary information about various endpoints for a stage.
" } } }, @@ -4055,6 +4440,35 @@ "smithy.api#pattern": "^arn:aws:ivs:[a-z0-9-]+:[0-9]+:stage/[a-zA-Z0-9-]+$" } }, + "com.amazonaws.ivsrealtime#StageEndpoint": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 2048 + } + } + }, + "com.amazonaws.ivsrealtime#StageEndpoints": { + "type": "structure", + "members": { + "events": { + "target": "com.amazonaws.ivsrealtime#StageEndpoint", + "traits": { + "smithy.api#documentation": "Events endpoint.
" + } + }, + "whip": { + "target": "com.amazonaws.ivsrealtime#StageEndpoint", + "traits": { + "smithy.api#documentation": "WHIP endpoint.
" + } + } + }, + "traits": { + "smithy.api#documentation": "Summary information about various endpoints for a stage.
" + } + }, "com.amazonaws.ivsrealtime#StageName": { "type": "string", "traits": { @@ -4628,7 +5042,7 @@ "autoParticipantRecordingConfiguration": { "target": "com.amazonaws.ivsrealtime#AutoParticipantRecordingConfiguration", "traits": { - "smithy.api#documentation": "Auto-participant-recording configuration object to attach to the stage.\n Auto-participant-recording configuration cannot be updated while recording is active.
" + "smithy.api#documentation": "Configuration object for individual participant recording, to attach to the stage. Note that this cannot be updated while recording is active.
" } } }