openapi: 3.0.0 info: version: '2020-07-14' x-release: v4 title: Amazon Interactive Video Service BatchGetChannel CreateChannel API description: '

Introduction

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

The API is an Amazon Web Services regional service. For a list of supported regions and Amazon IVS HTTPS service endpoints, see the Amazon IVS page in the Amazon Web Services General Reference.

All API request parameters and URLs are case sensitive.

For a summary of notable documentation changes in each release, see Document History.

Allowed Header Values

Resources

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

Tagging

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

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

The Amazon IVS API has these tag-related endpoints: TagResource, UntagResource, and ListTagsForResource. The following resources support tagging: Channels, Stream Keys, Playback Key Pairs, and Recording Configurations.

At most 50 tags can be applied to a resource.

Authentication versus Authorization

Note the differences between these concepts:

Authentication

All Amazon IVS API requests must be authenticated with a signature. The Amazon Web Services Command-Line Interface (CLI) and Amazon IVS Player SDKs take care of signing the underlying API calls for you. However, if your application calls the Amazon IVS API directly, it’s your responsibility to sign the requests.

You generate a signature using valid Amazon Web Services credentials that have permission to perform the requested action. For example, you must sign PutMetadata requests with a signature generated from a user account that has the ivs:PutMetadata permission.

For more information:

Amazon Resource Names (ARNs)

ARNs uniquely identify AWS resources. An ARN is required when you need to specify a resource unambiguously across all of AWS, such as in IAM policies and API calls. For more information, see Amazon Resource Names in the AWS General Reference.

Channel Endpoints

StreamKey Endpoints

Stream Endpoints

Private Channel Endpoints

For more information, see Setting Up Private Channels in the Amazon IVS User Guide.

RecordingConfiguration Endpoints

Amazon Web Services Tags Endpoints

' x-logo: url: https://twitter.com/awscloud/profile_image?size=original backgroundColor: '#FFFFFF' termsOfService: https://aws.amazon.com/service-terms/ contact: name: Mike Ralphson email: mike.ralphson@gmail.com url: https://github.com/mermade/aws2openapi x-twitter: PermittedSoc license: name: Apache 2.0 License url: http://www.apache.org/licenses/ x-providerName: amazonaws.com x-serviceName: ivs x-aws-signingName: ivs x-origin: - contentType: application/json url: https://raw.githubusercontent.com/aws/aws-sdk-js/master/apis/ivs-2020-07-14.normal.json converter: url: https://github.com/mermade/aws2openapi version: 1.0.0 x-apisguru-driver: external x-apiClientRegistration: url: https://portal.aws.amazon.com/gp/aws/developer/registration/index.html?nc2=h_ct x-apisguru-categories: - cloud x-preferred: true servers: - url: http://ivs.{region}.amazonaws.com variables: region: description: The AWS region enum: - us-east-1 - us-east-2 - us-west-1 - us-west-2 - us-gov-west-1 - us-gov-east-1 - ca-central-1 - eu-north-1 - eu-west-1 - eu-west-2 - eu-west-3 - eu-central-1 - eu-south-1 - af-south-1 - ap-northeast-1 - ap-northeast-2 - ap-northeast-3 - ap-southeast-1 - ap-southeast-2 - ap-east-1 - ap-south-1 - sa-east-1 - me-south-1 default: us-east-1 description: The Amazon IVS multi-region endpoint - url: https://ivs.{region}.amazonaws.com variables: region: description: The AWS region enum: - us-east-1 - us-east-2 - us-west-1 - us-west-2 - us-gov-west-1 - us-gov-east-1 - ca-central-1 - eu-north-1 - eu-west-1 - eu-west-2 - eu-west-3 - eu-central-1 - eu-south-1 - af-south-1 - ap-northeast-1 - ap-northeast-2 - ap-northeast-3 - ap-southeast-1 - ap-southeast-2 - ap-east-1 - ap-south-1 - sa-east-1 - me-south-1 default: us-east-1 description: The Amazon IVS multi-region endpoint - url: http://ivs.{region}.amazonaws.com.cn variables: region: description: The AWS region enum: - cn-north-1 - cn-northwest-1 default: cn-north-1 description: The Amazon IVS endpoint for China (Beijing) and China (Ningxia) - url: https://ivs.{region}.amazonaws.com.cn variables: region: description: The AWS region enum: - cn-north-1 - cn-northwest-1 default: cn-north-1 description: The Amazon IVS endpoint for China (Beijing) and China (Ningxia) security: - hmac: [] tags: - name: CreateChannel paths: /CreateChannel: parameters: - $ref: '#/components/parameters/X-Amz-Content-Sha256' - $ref: '#/components/parameters/X-Amz-Date' - $ref: '#/components/parameters/X-Amz-Algorithm' - $ref: '#/components/parameters/X-Amz-Credential' - $ref: '#/components/parameters/X-Amz-Security-Token' - $ref: '#/components/parameters/X-Amz-Signature' - $ref: '#/components/parameters/X-Amz-SignedHeaders' post: operationId: CreateChannel description: Creates a new channel and an associated stream key to start streaming. responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/CreateChannelResponse' '480': description: ResourceNotFoundException content: application/json: schema: $ref: '#/components/schemas/ResourceNotFoundException' '481': description: AccessDeniedException content: application/json: schema: $ref: '#/components/schemas/AccessDeniedException' '482': description: ValidationException content: application/json: schema: $ref: '#/components/schemas/ValidationException' '483': description: PendingVerification content: application/json: schema: $ref: '#/components/schemas/PendingVerification' '484': description: ServiceQuotaExceededException content: application/json: schema: $ref: '#/components/schemas/ServiceQuotaExceededException' parameters: [] requestBody: required: true content: application/json: schema: type: object properties: authorized: description: 'Whether the channel is private (enabled for playback authorization). Default: false.' type: boolean insecureIngest: description: 'Whether the channel allows insecure RTMP ingest. Default: false.' type: boolean latencyMode: description: 'Channel latency mode. Use NORMAL to broadcast and deliver live video up to Full HD. Use LOW for near-real-time interaction with viewers. (Note: In the Amazon IVS console, LOW and NORMAL correspond to Ultra-low and Standard, respectively.) Default: LOW.' type: string enum: - NORMAL - LOW name: description: Channel name. type: string pattern: ^[a-zA-Z0-9-_]*$ minLength: 0 maxLength: 128 preset: description: 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 enum: - HIGHER_BANDWIDTH_DELIVERY - CONSTRAINED_BANDWIDTH_DELIVERY recordingConfigurationArn: description: 'Recording-configuration ARN. Default: "" (empty string, recording is disabled).' type: string pattern: ^$|^arn:aws:ivs:[a-z0-9-]+:[0-9]+:recording-configuration/[a-zA-Z0-9-]+$ minLength: 0 maxLength: 128 tags: description: Array of 1-50 maps, each of the form string:string (key:value). See Tagging Amazon Web Services Resources for more information, 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: object minProperties: 0 maxProperties: 50 additionalProperties: $ref: '#/components/schemas/TagValue' type: description: '

Channel type, which determines the allowable resolution and bitrate. If you exceed the allowable input resolution or bitrate, the stream probably will disconnect immediately. Some types generate multiple qualities (renditions) from the original input; this automatically gives viewers the best experience for their devices and network conditions. Some types provide transcoded video; transcoding allows higher playback quality across a range of download speeds. Default: STANDARD. Valid values:

Optional transcode presets (available for the ADVANCED types) allow you to trade off available download bandwidth and video quality, to optimize the viewing experience. There are two presets:

' type: string enum: - BASIC - STANDARD - ADVANCED_SD - ADVANCED_HD summary: Amazon Interactive Video Service Create Channel x-microcks-operation: delay: 0 dispatcher: FALLBACK tags: - CreateChannel components: schemas: InsecureIngest: type: boolean ChannelLatencyMode: type: string enum: - NORMAL - LOW ChannelName: type: string pattern: ^[a-zA-Z0-9-_]*$ minLength: 0 maxLength: 128 TagValue: type: string minLength: 0 maxLength: 256 ChannelType: type: string enum: - BASIC - STANDARD - ADVANCED_SD - ADVANCED_HD ChannelArn: type: string pattern: ^arn:aws:[is]vs:[a-z0-9-]+:[0-9]+:channel/[a-zA-Z0-9-]+$ minLength: 1 maxLength: 128 ChannelRecordingConfigurationArn: type: string pattern: ^$|^arn:aws:ivs:[a-z0-9-]+:[0-9]+:recording-configuration/[a-zA-Z0-9-]+$ minLength: 0 maxLength: 128 ServiceQuotaExceededException: {} TranscodePreset: type: string enum: - HIGHER_BANDWIDTH_DELIVERY - CONSTRAINED_BANDWIDTH_DELIVERY StreamKeyArn: type: string pattern: ^arn:aws:[is]vs:[a-z0-9-]+:[0-9]+:stream-key/[a-zA-Z0-9-]+$ minLength: 1 maxLength: 128 StreamKeyValue: type: string format: password ResourceNotFoundException: {} Channel: type: object properties: arn: allOf: - $ref: '#/components/schemas/ChannelArn' - description: Channel ARN. authorized: allOf: - $ref: '#/components/schemas/IsAuthorized' - description: 'Whether the channel is private (enabled for playback authorization). Default: false.' ingestEndpoint: allOf: - $ref: '#/components/schemas/IngestEndpoint' - description: Channel ingest endpoint, part of the definition of an ingest server, used when you set up streaming software. insecureIngest: allOf: - $ref: '#/components/schemas/InsecureIngest' - description: 'Whether the channel allows insecure RTMP ingest. Default: false.' latencyMode: allOf: - $ref: '#/components/schemas/ChannelLatencyMode' - description: '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. (Note: In the Amazon IVS console, LOW and NORMAL correspond to Ultra-low and Standard, respectively.)' name: allOf: - $ref: '#/components/schemas/ChannelName' - description: Channel name. playbackUrl: allOf: - $ref: '#/components/schemas/PlaybackURL' - description: Channel playback URL. preset: allOf: - $ref: '#/components/schemas/TranscodePreset' - description: 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 (""). recordingConfigurationArn: allOf: - $ref: '#/components/schemas/ChannelRecordingConfigurationArn' - description: 'Recording-configuration ARN. A value other than an empty string indicates that recording is enabled. Default: "" (empty string, recording is disabled).' tags: allOf: - $ref: '#/components/schemas/Tags' - description: Tags attached to the resource. Array of 1-50 maps, each of the form string:string (key:value). See Tagging Amazon Web Services Resources for more information, 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: allOf: - $ref: '#/components/schemas/ChannelType' - description: '

Channel type, which determines the allowable resolution and bitrate. If you exceed the allowable input resolution or bitrate, the stream probably will disconnect immediately. Some types generate multiple qualities (renditions) from the original input; this automatically gives viewers the best experience for their devices and network conditions. Some types provide transcoded video; transcoding allows higher playback quality across a range of download speeds. Default: STANDARD. Valid values:

Optional transcode presets (available for the ADVANCED types) allow you to trade off available download bandwidth and video quality, to optimize the viewing experience. There are two presets:

' description: Object specifying a channel. AccessDeniedException: {} IngestEndpoint: type: string PlaybackURL: type: string Tags: type: object minProperties: 0 maxProperties: 50 additionalProperties: $ref: '#/components/schemas/TagValue' IsAuthorized: type: boolean CreateChannelResponse: type: object properties: channel: allOf: - $ref: '#/components/schemas/Channel' - description:

streamKey: allOf: - $ref: '#/components/schemas/StreamKey' - description:

ValidationException: {} PendingVerification: {} StreamKey: type: object properties: arn: allOf: - $ref: '#/components/schemas/StreamKeyArn' - description: Stream-key ARN. channelArn: allOf: - $ref: '#/components/schemas/ChannelArn' - description: Channel ARN for the stream. tags: allOf: - $ref: '#/components/schemas/Tags' - description: Tags attached to the resource. Array of 1-50 maps, each of the form string:string (key:value). See Tagging Amazon Web Services Resources for more information, including restrictions that apply to tags and "Tag naming limits and requirements"; Amazon IVS has no service-specific constraints beyond what is documented there. value: allOf: - $ref: '#/components/schemas/StreamKeyValue' - description: Stream-key value. description: Object specifying a stream key. parameters: X-Amz-Credential: name: X-Amz-Credential in: header schema: type: string required: false X-Amz-Algorithm: name: X-Amz-Algorithm in: header schema: type: string required: false X-Amz-Content-Sha256: name: X-Amz-Content-Sha256 in: header schema: type: string required: false X-Amz-Security-Token: name: X-Amz-Security-Token in: header schema: type: string required: false X-Amz-SignedHeaders: name: X-Amz-SignedHeaders in: header schema: type: string required: false X-Amz-Date: name: X-Amz-Date in: header schema: type: string required: false X-Amz-Signature: name: X-Amz-Signature in: header schema: type: string required: false securitySchemes: hmac: type: apiKey name: Authorization in: header description: Amazon Signature authorization v4 x-amazon-apigateway-authtype: awsSigv4 externalDocs: description: Amazon Web Services documentation url: https://docs.aws.amazon.com/ivs/ x-hasEquivalentPaths: true