CreateStreamingDistribution
This API is deprecated. Amazon CloudFront is deprecating real-time messaging protocol (RTMP)
distributions on December 31, 2020. For more information, read the announcement
Request Syntax
POST /2020-05-31/streaming-distribution HTTP/1.1
<?xml version="1.0" encoding="UTF-8"?>
<StreamingDistributionConfig xmlns="http://cloudfront.amazonaws.com/doc/2020-05-31/">
<Aliases>
<Items>
<CNAME>string
</CNAME>
</Items>
<Quantity>integer
</Quantity>
</Aliases>
<CallerReference>string
</CallerReference>
<Comment>string
</Comment>
<Enabled>boolean
</Enabled>
<Logging>
<Bucket>string
</Bucket>
<Enabled>boolean
</Enabled>
<Prefix>string
</Prefix>
</Logging>
<PriceClass>string
</PriceClass>
<S3Origin>
<DomainName>string
</DomainName>
<OriginAccessIdentity>string
</OriginAccessIdentity>
</S3Origin>
<TrustedSigners>
<Enabled>boolean
</Enabled>
<Items>
<AwsAccountNumber>string
</AwsAccountNumber>
</Items>
<Quantity>integer
</Quantity>
</TrustedSigners>
</StreamingDistributionConfig>
URI Request Parameters
The request does not use any URI parameters.
Request Body
The request accepts the following data in XML format.
- StreamingDistributionConfig
-
Root level tag for the StreamingDistributionConfig parameters.
Required: Yes
- Aliases
-
A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution.
Type: Aliases object
Required: No
- CallerReference
-
A unique value (for example, a date-time stamp) that ensures that the request can't be replayed.
If the value of
CallerReference
is new (regardless of the content of theStreamingDistributionConfig
object), CloudFront creates a new distribution.If
CallerReference
is a value that you already sent in a previous request to create a distribution, CloudFront returns aDistributionAlreadyExists
error.Type: String
Required: Yes
- Comment
-
Any comments you want to include about the streaming distribution.
Type: String
Required: Yes
- Enabled
-
Whether the streaming distribution is enabled to accept user requests for content.
Type: Boolean
Required: Yes
- Logging
-
A complex type that controls whether access logs are written for the streaming distribution.
Type: StreamingLoggingConfig object
Required: No
- PriceClass
-
A complex type that contains information about price class for this streaming distribution.
Type: String
Valid Values:
PriceClass_100 | PriceClass_200 | PriceClass_All
Required: No
- S3Origin
-
A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.
Type: S3Origin object
Required: Yes
- TrustedSigners
-
A complex type that specifies any AWS accounts that you want to permit to create signed URLs for private content. If you want the distribution to use signed URLs, include this element; if you want the distribution to use public URLs, remove this element. For more information, see Serving Private Content through CloudFront in the Amazon CloudFront Developer Guide.
Type: TrustedSigners object
Required: Yes
Response Syntax
HTTP/1.1 201
<?xml version="1.0" encoding="UTF-8"?>
<StreamingDistribution>
<ActiveTrustedSigners>
<Enabled>boolean</Enabled>
<Items>
<Signer>
<AwsAccountNumber>string</AwsAccountNumber>
<KeyPairIds>
<Items>
<KeyPairId>string</KeyPairId>
</Items>
<Quantity>integer</Quantity>
</KeyPairIds>
</Signer>
</Items>
<Quantity>integer</Quantity>
</ActiveTrustedSigners>
<ARN>string</ARN>
<DomainName>string</DomainName>
<Id>string</Id>
<LastModifiedTime>timestamp</LastModifiedTime>
<Status>string</Status>
<StreamingDistributionConfig>
<Aliases>
<Items>
<CNAME>string</CNAME>
</Items>
<Quantity>integer</Quantity>
</Aliases>
<CallerReference>string</CallerReference>
<Comment>string</Comment>
<Enabled>boolean</Enabled>
<Logging>
<Bucket>string</Bucket>
<Enabled>boolean</Enabled>
<Prefix>string</Prefix>
</Logging>
<PriceClass>string</PriceClass>
<S3Origin>
<DomainName>string</DomainName>
<OriginAccessIdentity>string</OriginAccessIdentity>
</S3Origin>
<TrustedSigners>
<Enabled>boolean</Enabled>
<Items>
<AwsAccountNumber>string</AwsAccountNumber>
</Items>
<Quantity>integer</Quantity>
</TrustedSigners>
</StreamingDistributionConfig>
</StreamingDistribution>
Response Elements
If the action is successful, the service sends back an HTTP 201 response.
The following data is returned in XML format by the service.
- StreamingDistribution
-
Root level tag for the StreamingDistribution parameters.
Required: Yes
- ActiveTrustedSigners
-
A complex type that lists the AWS accounts, if any, that you included in the
TrustedSigners
complex type for this distribution. These are the accounts that you want to allow to create signed URLs for private content.The
Signer
complex type lists the AWS account number of the trusted signer orself
if the signer is the AWS account that created the distribution. TheSigner
element also includes the IDs of any active CloudFront key pairs that are associated with the trusted signer's AWS account. If noKeyPairId
element appears for aSigner
, that signer can't create signed URLs.For more information, see Serving Private Content through CloudFront in the Amazon CloudFront Developer Guide.
Type: ActiveTrustedSigners object
- ARN
-
The ARN (Amazon Resource Name) for the distribution. For example:
arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5
, where123456789012
is your AWS account ID.Type: String
- DomainName
-
The domain name that corresponds to the streaming distribution, for example,
s5c39gqb8ow64r.cloudfront.net
.Type: String
- Id
-
The identifier for the RTMP distribution. For example:
EGTXBD79EXAMPLE
.Type: String
- LastModifiedTime
-
The date and time that the distribution was last modified.
Type: Timestamp
- Status
-
The current status of the RTMP distribution. When the status is
Deployed
, the distribution's information is propagated to all CloudFront edge locations.Type: String
- StreamingDistributionConfig
-
The current configuration information for the RTMP distribution.
Type: StreamingDistributionConfig object
Errors
For information about the errors that are common to all actions, see Common Errors.
- AccessDenied
-
Access denied.
HTTP Status Code: 403
- CNAMEAlreadyExists
-
The CNAME specified is already defined for CloudFront.
HTTP Status Code: 409
- InconsistentQuantities
-
The value of
Quantity
and the size ofItems
don't match.HTTP Status Code: 400
- InvalidArgument
-
An argument is invalid.
HTTP Status Code: 400
- InvalidOrigin
-
The Amazon S3 origin server specified does not refer to a valid Amazon S3 bucket.
HTTP Status Code: 400
- InvalidOriginAccessControl
-
The origin access control is not valid.
HTTP Status Code: 400
- InvalidOriginAccessIdentity
-
The origin access identity is not valid or doesn't exist.
HTTP Status Code: 400
- MissingBody
-
This operation requires a body. Ensure that the body is present and the
Content-Type
header is set.HTTP Status Code: 400
- StreamingDistributionAlreadyExists
-
The caller reference you attempted to create the streaming distribution with is associated with another distribution
HTTP Status Code: 409
- TooManyStreamingDistributionCNAMEs
-
Your request contains more CNAMEs than are allowed per distribution.
HTTP Status Code: 400
- TooManyStreamingDistributions
-
Processing your request would cause you to exceed the maximum number of streaming distributions allowed.
HTTP Status Code: 400
- TooManyTrustedSigners
-
Your request contains more trusted signers than are allowed per distribution.
HTTP Status Code: 400
- TrustedSignerDoesNotExist
-
One or more of your trusted signers don't exist.
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: