AWS::IVS::IngestConfiguration - Amazon CloudFormation
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

AWS::IVS::IngestConfiguration

The AWS::IVS::IngestConfiguration resource specifies an ingest protocol to be used for a stage. For more information, see Stream Ingest in the Amazon IVS Real-Time Streaming User Guide.

Syntax

To declare this entity in your Amazon CloudFormation template, use the following syntax:

JSON

{ "Type" : "AWS::IVS::IngestConfiguration", "Properties" : { "IngestProtocol" : String, "InsecureIngest" : Boolean, "Name" : String, "StageArn" : String, "Tags" : [ Tag, ... ], "UserId" : String } }

YAML

Type: AWS::IVS::IngestConfiguration Properties: IngestProtocol: String InsecureIngest: Boolean Name: String StageArn: String Tags: - Tag UserId: String

Properties

IngestProtocol

Type of ingest protocol that the user employs for broadcasting.

Required: No

Type: String

Allowed values: RTMP | RTMPS

Update requires: Replacement

InsecureIngest

Whether the channel allows insecure RTMP ingest. Default: false.

Required: No

Type: Boolean

Update requires: Replacement

Name

Ingest name.

Required: No

Type: String

Pattern: ^[a-zA-Z0-9-_]*$

Minimum: 0

Maximum: 128

Update requires: Replacement

StageArn

ARN of the stage with which the IngestConfiguration is associated.

Required: No

Type: String

Pattern: ^arn:aws:ivs:[a-z0-9-]+:[0-9]+:stage/[a-zA-Z0-9-]+$

Minimum: 0

Maximum: 128

Update requires: No interruption

Tags

An array of key-value pairs to apply to this resource.

Required: No

Type: Array of Tag

Maximum: 50

Update requires: No interruption

UserId

Customer-assigned name to help identify the participant using the IngestConfiguration; 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.

Required: No

Type: String

Update requires: Replacement

Return values

Ref

When you pass the logical ID of this resource to the intrinsic Ref function, Ref returns the ingest configuration ARN. For example:

{ "Ref": "myIngestConfiguration" }

For the Amazon IVS ingest configuration myIngestConfiguration, Ref returns the ingest configuration ARN.

For more information about using the Ref function, see Ref.

Fn::GetAtt

The Fn::GetAtt intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the Fn::GetAtt intrinsic function, see Fn::GetAtt.

Arn

The ingest-configuration ARN. For example: arn:aws:ivs:us-west-2:123456789012:ingest-configuration/abcdABCDefgh

ParticipantId

ID of the participant within the stage. For example: abCDEf12GHIj

State

State of the ingest configuration. It is ACTIVE if a publisher currently is publishing to the stage associated with the ingest configuration. Valid values: ACTIVE | INACTIVE.

StreamKey

Ingest-key value for the RTMP(S) protocol. For example: skSKABCDefgh

Examples

Ingest Configuration Template Examples

The following examples specify an Amazon IVS ingest configuration.

JSON

{ "AWSTemplateFormatVersion": "2010-09-09", "Resources": { "Stage": { "Type": "AWS::IVS::Stage", "Properties": { "Name": "myStage", "Tags": [ { "Key": "MyKey", "Value": "MyValue" } ] } }, "IngestConfiguration": { "Type": "AWS::IVS::IngestConfiguration", "Properties": { "Name": "myIngest", "StageArn": {"Ref": "Stage"}, "IngestProtocol": "RTMPS", "InsecureIngest": false, "UserId": "myUser", "Tags": [ { "Key": "MyKey", "Value": "MyValue" } ] } } }, "Outputs": { "IngestConfigurationArn": { "Value": {"Ref": "IngestConfiguration"} }, "IngestConfigurationState": { "Value": { "Fn::GetAtt": [ "IngestConfiguration", "State" ] } }, "IngestConfigurationStreamKey": { "Value": { "Fn::GetAtt": [ "IngestConfiguration", "StreamKey" ] } }, "IngestConfigurationParticipantId": { "Value": { "Fn::GetAtt": [ "IngestConfiguration", "ParticipantId" ] } } } }

YAML

AWSTemplateFormatVersion: 2010-09-09 Resources: Stage: Type: AWS::IVS::Stage Properties: Name: MyStage Tags: - Key: MyKey Value: MyValue IngestConfiguration: Type: AWS::IVS::IngestConfiguration Properties: Name: myIngestName IngestProtocol: RTMPS InsecureIngest: false UserId: myUser StageArn: !Ref Stage Tags: - Key: MyKey Value: MyValue Outputs: IngestConfigurationArn: Value: !Ref IngestConfiguration IngestConfigurationState: Value: !GetAtt IngestConfiguration.State IngestConfigurationStreamKey: Value: !GetAtt IngestConfiguration.StreamKey IngestConfigurationParticipantId: Value: !GetAtt IngestConfiguration.ParticipantId

See also