CreateChannel - Amazon IVS

CreateChannel

Creates a new channel and an associated stream key to start streaming.

Request Syntax

POST /CreateChannel HTTP/1.1 Content-type: application/json { "authorized": boolean, "containerFormat": "string", "insecureIngest": boolean, "latencyMode": "string", "multitrackInputConfiguration": { "enabled": boolean, "maximumResolution": "string", "policy": "string" }, "name": "string", "playbackRestrictionPolicyArn": "string", "preset": "string", "recordingConfigurationArn": "string", "tags": { "string" : "string" }, "type": "string" }

URI Request Parameters

The request does not use any URI parameters.

Request Body

The request accepts the following data in JSON format.

authorized

Whether the channel is private (enabled for playback authorization). Default: false.

Type: Boolean

Required: No

containerFormat

Indicates which content-packaging format is used (MPEG-TS or fMP4). If multitrackInputConfiguration is specified and enabled is true, then containerFormat is required and must be set to FRAGMENTED_MP4. Otherwise, containerFormat may be set to TS or FRAGMENTED_MP4. Default: TS.

Type: String

Valid Values: TS | FRAGMENTED_MP4

Required: No

insecureIngest

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

Type: Boolean

Required: No

latencyMode

Channel latency mode. Use NORMAL to broadcast and deliver live video up to Full HD. Use LOW for near-real-time interaction with viewers. Default: LOW.

Type: String

Valid Values: NORMAL | LOW

Required: No

multitrackInputConfiguration

Object specifying multitrack input configuration. Default: no multitrack input configuration is specified.

Type: MultitrackInputConfiguration object

Required: No

name

Channel name.

Type: String

Length Constraints: Minimum length of 0. Maximum length of 128.

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

Required: No

playbackRestrictionPolicyArn

Playback-restriction-policy ARN. A valid ARN value here both specifies the ARN and enables playback restriction. Default: "" (empty string, no playback restriction policy is applied).

Type: String

Length Constraints: Minimum length of 0. Maximum length of 128.

Pattern: ^$|^arn:aws:ivs:[a-z0-9-]+:[0-9]+:playback-restriction-policy/[a-zA-Z0-9-]+$

Required: No

preset

Optional transcode preset for the channel. This is selectable only for ADVANCED_HD and ADVANCED_SD channel types. For those channel types, the default preset is HIGHER_BANDWIDTH_DELIVERY. For other channel types (BASIC and STANDARD), preset is the empty string ("").

Type: String

Valid Values: HIGHER_BANDWIDTH_DELIVERY | CONSTRAINED_BANDWIDTH_DELIVERY

Required: No

recordingConfigurationArn

Recording-configuration ARN. A valid ARN value here both specifies the ARN and enables recording. Default: "" (empty string, recording is disabled).

Type: String

Length Constraints: Minimum length of 0. Maximum length of 128.

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

Required: No

tags

Array of 1-50 maps, each of the form string:string (key:value). See Best practices and strategies in Tagging AWS Resources and Tag Editor for details, including restrictions that apply to tags and "Tag naming limits and requirements"; Amazon IVS has no service-specific constraints beyond what is documented there.

Type: String to string map

Map Entries: Minimum number of 0 items. Maximum number of 50 items.

Key Length Constraints: Minimum length of 1. Maximum length of 128.

Value Length Constraints: Minimum length of 0. Maximum length of 256.

Required: No

type

Channel type, which determines the allowable resolution and bitrate. If you exceed the allowable input resolution or bitrate, the stream probably will disconnect immediately. Default: STANDARD. For details, see Channel Types.

Type: String

Valid Values: BASIC | STANDARD | ADVANCED_SD | ADVANCED_HD

Required: No

Response Syntax

HTTP/1.1 200 Content-type: application/json { "channel": { "arn": "string", "authorized": boolean, "containerFormat": "string", "ingestEndpoint": "string", "insecureIngest": boolean, "latencyMode": "string", "multitrackInputConfiguration": { "enabled": boolean, "maximumResolution": "string", "policy": "string" }, "name": "string", "playbackRestrictionPolicyArn": "string", "playbackUrl": "string", "preset": "string", "recordingConfigurationArn": "string", "srt": { "endpoint": "string", "passphrase": "string" }, "tags": { "string" : "string" }, "type": "string" }, "streamKey": { "arn": "string", "channelArn": "string", "tags": { "string" : "string" }, "value": "string" } }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

channel

Type: Channel object

streamKey

Type: StreamKey object

Errors

For information about the errors that are common to all actions, see Common Errors.

AccessDeniedException

HTTP Status Code: 403

PendingVerification

HTTP Status Code: 403

ResourceNotFoundException

HTTP Status Code: 404

ServiceQuotaExceededException

HTTP Status Code: 402

ValidationException

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: