Amazon Interactive Video Service RealTime

2024/06/26 - Amazon Interactive Video Service RealTime - 4 new3 updated api methods

Changes  IVS Real-Time now offers customers the ability to upload public keys for customer vended participant tokens.

GetPublicKey (new) Link ¶

Gets information for the specified public key.

See also: AWS API Documentation

Request Syntax

client.get_public_key(
    arn='string'
)
type arn:

string

param arn:

[REQUIRED]

ARN of the public key for which the information is to be retrieved.

rtype:

dict

returns:

Response Syntax

{
    'publicKey': {
        'arn': 'string',
        'name': 'string',
        'publicKeyMaterial': 'string',
        'fingerprint': 'string',
        'tags': {
            'string': 'string'
        }
    }
}

Response Structure

  • (dict) --

    • publicKey (dict) --

      The public key that is returned.

      • arn (string) --

        Public key ARN.

      • name (string) --

        Public key name.

      • publicKeyMaterial (string) --

        Public key material.

      • fingerprint (string) --

        The public key fingerprint, a short string used to identify or verify the full public key.

      • tags (dict) --

        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.

        • (string) --

          • (string) --

ListPublicKeys (new) Link ¶

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

See also: AWS API Documentation

Request Syntax

client.list_public_keys(
    nextToken='string',
    maxResults=123
)
type nextToken:

string

param nextToken:

The first public key to retrieve. This is used for pagination; see the nextToken response field.

type maxResults:

integer

param maxResults:

Maximum number of results to return. Default: 50.

rtype:

dict

returns:

Response Syntax

{
    'publicKeys': [
        {
            'arn': 'string',
            'name': 'string',
            'tags': {
                'string': 'string'
            }
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • publicKeys (list) --

      List of the matching public keys (summary information only).

      • (dict) --

        Summary information about a public key.

        • arn (string) --

          Public key ARN.

        • name (string) --

          Public key name.

        • tags (dict) --

          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.

          • (string) --

            • (string) --

    • nextToken (string) --

      If there are more public keys than maxResults, use nextToken in the request to get the next set.

ImportPublicKey (new) Link ¶

Import a public key to be used for signing stage participant tokens.

See also: AWS API Documentation

Request Syntax

client.import_public_key(
    publicKeyMaterial='string',
    name='string',
    tags={
        'string': 'string'
    }
)
type publicKeyMaterial:

string

param publicKeyMaterial:

[REQUIRED]

The content of the public key to be imported.

type name:

string

param name:

Name of the public key to be imported.

type tags:

dict

param tags:

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.

  • (string) --

    • (string) --

rtype:

dict

returns:

Response Syntax

{
    'publicKey': {
        'arn': 'string',
        'name': 'string',
        'publicKeyMaterial': 'string',
        'fingerprint': 'string',
        'tags': {
            'string': 'string'
        }
    }
}

Response Structure

  • (dict) --

    • publicKey (dict) --

      The public key that was imported.

      • arn (string) --

        Public key ARN.

      • name (string) --

        Public key name.

      • publicKeyMaterial (string) --

        Public key material.

      • fingerprint (string) --

        The public key fingerprint, a short string used to identify or verify the full public key.

      • tags (dict) --

        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.

        • (string) --

          • (string) --

DeletePublicKey (new) Link ¶

Deletes the specified public key used to sign stage participant tokens. This invalidates future participant tokens generated using the key pair’s private key.

See also: AWS API Documentation

Request Syntax

client.delete_public_key(
    arn='string'
)
type arn:

string

param arn:

[REQUIRED]

ARN of the public key to be deleted.

rtype:

dict

returns:

Response Syntax

{}

Response Structure

  • (dict) --

CreateStage (updated) Link ¶
Changes (response)
{'stage': {'endpoints': {'events': 'string', 'whip': 'string'}}}

Creates a new stage (and optionally participant tokens).

See also: AWS API Documentation

Request Syntax

client.create_stage(
    name='string',
    participantTokenConfigurations=[
        {
            'duration': 123,
            'userId': 'string',
            'attributes': {
                'string': 'string'
            },
            'capabilities': [
                'PUBLISH'|'SUBSCRIBE',
            ]
        },
    ],
    tags={
        'string': 'string'
    },
    autoParticipantRecordingConfiguration={
        'storageConfigurationArn': 'string',
        'mediaTypes': [
            'AUDIO_VIDEO'|'AUDIO_ONLY',
        ]
    }
)
type name:

string

param name:

Optional name that can be specified for the stage being created.

type participantTokenConfigurations:

list

param participantTokenConfigurations:

Array of participant token configuration objects to attach to the new stage.

  • (dict) --

    Object specifying a participant token configuration in a stage.

    • duration (integer) --

      Duration (in minutes), after which the corresponding participant token expires. Default: 720 (12 hours).

    • userId (string) --

      Customer-assigned name to help identify the token; this can be used to link a participant to a user in the customer’s own systems. This can be any UTF-8 encoded text. This field is exposed to all stage participants and should not be used for personally identifying, confidential, or sensitive information.

    • attributes (dict) --

      Application-provided attributes to encode into the corresponding participant token and attach to a stage. Map keys and values can contain UTF-8 encoded text. The maximum length of this field is 1 KB total. This field is exposed to all stage participants and should not be used for personally identifying, confidential, or sensitive information.

      • (string) --

        • (string) --

    • capabilities (list) --

      Set of capabilities that the user is allowed to perform in the stage.

      • (string) --

type tags:

dict

param tags:

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.

  • (string) --

    • (string) --

type autoParticipantRecordingConfiguration:

dict

param autoParticipantRecordingConfiguration:

Configuration object for individual participant recording, to attach to the new stage.

  • storageConfigurationArn (string) -- [REQUIRED]

    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.

  • mediaTypes (list) --

    Types of media to be recorded. Default: AUDIO_VIDEO.

    • (string) --

rtype:

dict

returns:

Response Syntax

{
    'stage': {
        'arn': 'string',
        'name': 'string',
        'activeSessionId': 'string',
        'tags': {
            'string': 'string'
        },
        'autoParticipantRecordingConfiguration': {
            'storageConfigurationArn': 'string',
            'mediaTypes': [
                'AUDIO_VIDEO'|'AUDIO_ONLY',
            ]
        },
        'endpoints': {
            'events': 'string',
            'whip': 'string'
        }
    },
    'participantTokens': [
        {
            'participantId': 'string',
            'token': 'string',
            'userId': 'string',
            'attributes': {
                'string': 'string'
            },
            'duration': 123,
            'capabilities': [
                'PUBLISH'|'SUBSCRIBE',
            ],
            'expirationTime': datetime(2015, 1, 1)
        },
    ]
}

Response Structure

  • (dict) --

    • stage (dict) --

      The stage that was created.

      • arn (string) --

        Stage ARN.

      • name (string) --

        Stage name.

      • activeSessionId (string) --

        ID of the active session within the stage.

      • tags (dict) --

        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.

        • (string) --

          • (string) --

      • autoParticipantRecordingConfiguration (dict) --

        Configuration object for individual participant recording, attached to the stage.

        • storageConfigurationArn (string) --

          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.

        • mediaTypes (list) --

          Types of media to be recorded. Default: AUDIO_VIDEO.

          • (string) --

      • endpoints (dict) --

        Summary information about various endpoints for a stage.

        • events (string) --

          Events endpoint.

        • whip (string) --

          WHIP endpoint.

    • participantTokens (list) --

      Participant tokens attached to the stage. These correspond to the participants in the request.

      • (dict) --

        Object specifying a participant token in a stage.

        Important: Treat tokens as opaque; i.e., do not build functionality based on token contents. The format of tokens could change in the future.

        • participantId (string) --

          Unique identifier for this participant token, assigned by IVS.

        • token (string) --

          The issued client token, encrypted.

        • userId (string) --

          Customer-assigned name to help identify the token; this can be used to link a participant to a user in the customer’s own systems. This can be any UTF-8 encoded text. This field is exposed to all stage participants and should not be used for personally identifying, confidential, or sensitive information.

        • attributes (dict) --

          Application-provided attributes to encode into the token and attach to a stage. This field is exposed to all stage participants and should not be used for personally identifying, confidential, or sensitive information.

          • (string) --

            • (string) --

        • duration (integer) --

          Duration (in minutes), after which the participant token expires. Default: 720 (12 hours).

        • capabilities (list) --

          Set of capabilities that the user is allowed to perform in the stage.

          • (string) --

        • expirationTime (datetime) --

          ISO 8601 timestamp (returned as a string) for when this token expires.

GetStage (updated) Link ¶
Changes (response)
{'stage': {'endpoints': {'events': 'string', 'whip': 'string'}}}

Gets information for the specified stage.

See also: AWS API Documentation

Request Syntax

client.get_stage(
    arn='string'
)
type arn:

string

param arn:

[REQUIRED]

ARN of the stage for which the information is to be retrieved.

rtype:

dict

returns:

Response Syntax

{
    'stage': {
        'arn': 'string',
        'name': 'string',
        'activeSessionId': 'string',
        'tags': {
            'string': 'string'
        },
        'autoParticipantRecordingConfiguration': {
            'storageConfigurationArn': 'string',
            'mediaTypes': [
                'AUDIO_VIDEO'|'AUDIO_ONLY',
            ]
        },
        'endpoints': {
            'events': 'string',
            'whip': 'string'
        }
    }
}

Response Structure

  • (dict) --

    • stage (dict) --

      The stage that is returned.

      • arn (string) --

        Stage ARN.

      • name (string) --

        Stage name.

      • activeSessionId (string) --

        ID of the active session within the stage.

      • tags (dict) --

        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.

        • (string) --

          • (string) --

      • autoParticipantRecordingConfiguration (dict) --

        Configuration object for individual participant recording, attached to the stage.

        • storageConfigurationArn (string) --

          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.

        • mediaTypes (list) --

          Types of media to be recorded. Default: AUDIO_VIDEO.

          • (string) --

      • endpoints (dict) --

        Summary information about various endpoints for a stage.

        • events (string) --

          Events endpoint.

        • whip (string) --

          WHIP endpoint.

UpdateStage (updated) Link ¶
Changes (response)
{'stage': {'endpoints': {'events': 'string', 'whip': 'string'}}}

Updates a stage’s configuration.

See also: AWS API Documentation

Request Syntax

client.update_stage(
    arn='string',
    name='string',
    autoParticipantRecordingConfiguration={
        'storageConfigurationArn': 'string',
        'mediaTypes': [
            'AUDIO_VIDEO'|'AUDIO_ONLY',
        ]
    }
)
type arn:

string

param arn:

[REQUIRED]

ARN of the stage to be updated.

type name:

string

param name:

Name of the stage to be updated.

type autoParticipantRecordingConfiguration:

dict

param autoParticipantRecordingConfiguration:

Configuration object for individual participant recording, to attach to the stage. Note that this cannot be updated while recording is active.

  • storageConfigurationArn (string) -- [REQUIRED]

    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.

  • mediaTypes (list) --

    Types of media to be recorded. Default: AUDIO_VIDEO.

    • (string) --

rtype:

dict

returns:

Response Syntax

{
    'stage': {
        'arn': 'string',
        'name': 'string',
        'activeSessionId': 'string',
        'tags': {
            'string': 'string'
        },
        'autoParticipantRecordingConfiguration': {
            'storageConfigurationArn': 'string',
            'mediaTypes': [
                'AUDIO_VIDEO'|'AUDIO_ONLY',
            ]
        },
        'endpoints': {
            'events': 'string',
            'whip': 'string'
        }
    }
}

Response Structure

  • (dict) --

    • stage (dict) --

      The updated stage.

      • arn (string) --

        Stage ARN.

      • name (string) --

        Stage name.

      • activeSessionId (string) --

        ID of the active session within the stage.

      • tags (dict) --

        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.

        • (string) --

          • (string) --

      • autoParticipantRecordingConfiguration (dict) --

        Configuration object for individual participant recording, attached to the stage.

        • storageConfigurationArn (string) --

          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.

        • mediaTypes (list) --

          Types of media to be recorded. Default: AUDIO_VIDEO.

          • (string) --

      • endpoints (dict) --

        Summary information about various endpoints for a stage.

        • events (string) --

          Events endpoint.

        • whip (string) --

          WHIP endpoint.