[ aws . cloudfront ]
Creates a new RTMP distribution. An RTMP distribution is similar to a web distribution, but an RTMP distribution streams media files using the Adobe Real-Time Messaging Protocol (RTMP) instead of serving files using HTTP.
To create a new distribution, submit a POST
request to the CloudFront API version /distribution resource. The request body must include a document with a StreamingDistributionConfig element. The response echoes the StreamingDistributionConfig
element and returns other information about the RTMP distribution.
To get the status of your request, use the GET StreamingDistribution API action. When the value of Enabled
is true
and the value of Status
is Deployed
, your distribution is ready. A distribution usually deploys in less than 15 minutes.
For more information about web distributions, see Working with RTMP Distributions in the Amazon CloudFront Developer Guide .
Warning
Beginning with the 2012-05-05 version of the CloudFront API, we made substantial changes to the format of the XML document that you include in the request body when you create or update a web distribution or an RTMP distribution, and when you invalidate objects. With previous versions of the API, we discovered that it was too easy to accidentally delete one or more values for an element that accepts multiple values, for example, CNAMEs and trusted signers. Our changes for the 2012-05-05 release are intended to prevent these accidental deletions and to notify you when there’s a mismatch between the number of values you say you’re specifying in the Quantity
element and the number of values specified.
See also: AWS API Documentation
See ‘aws help’ for descriptions of global parameters.
create-streaming-distribution
--streaming-distribution-config <value>
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--cli-auto-prompt <value>]
--streaming-distribution-config
(structure)
The streaming distribution’s configuration information.
CallerReference -> (string)
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.S3Origin -> (structure)
A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.
DomainName -> (string)
The DNS name of the Amazon S3 origin.
OriginAccessIdentity -> (string)
The CloudFront origin access identity to associate with the distribution. Use an origin access identity to configure the distribution so that end users can only access objects in an Amazon S3 bucket through CloudFront.
If you want end users to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty
OriginAccessIdentity
element.To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty
OriginAccessIdentity
element.To replace the origin access identity, update the distribution configuration and specify the new origin access identity.
For more information, see Using an Origin Access Identity to Restrict Access to Your Amazon S3 Content in the Amazon CloudFront Developer Guide .
Aliases -> (structure)
A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution.
Quantity -> (integer)
The number of CNAME aliases, if any, that you want to associate with this distribution.
Items -> (list)
A complex type that contains the CNAME aliases, if any, that you want to associate with this distribution.
(string)
Comment -> (string)
Any comments you want to include about the streaming distribution.
Logging -> (structure)
A complex type that controls whether access logs are written for the streaming distribution.
Enabled -> (boolean)
Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket. If you don’t want to enable logging when you create a streaming distribution or if you want to disable logging for an existing streaming distribution, specify
false
forEnabled
, and specifyempty Bucket
andPrefix
elements. If you specifyfalse
forEnabled
but you specify values forBucket
andPrefix
, the values are automatically deleted.Bucket -> (string)
The Amazon S3 bucket to store the access logs in, for example,
myawslogbucket.s3.amazonaws.com
.Prefix -> (string)
An optional string that you want CloudFront to prefix to the access log filenames for this streaming distribution, for example,
myprefix/
. If you want to enable logging, but you don’t want to specify a prefix, you still must include an emptyPrefix
element in theLogging
element.TrustedSigners -> (structure)
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 .
Enabled -> (boolean)
Specifies whether you want to require viewers to use signed URLs to access the files specified by
PathPattern
andTargetOriginId
.Quantity -> (integer)
The number of trusted signers for this cache behavior.
Items -> (list)
Optional : A complex type that contains trusted signers for this cache behavior. If
Quantity
is0
, you can omitItems
.(string)
PriceClass -> (string)
A complex type that contains information about price class for this streaming distribution.
Enabled -> (boolean)
Whether the streaming distribution is enabled to accept user requests for content.
Shorthand Syntax:
CallerReference=string,S3Origin={DomainName=string,OriginAccessIdentity=string},Aliases={Quantity=integer,Items=[string,string]},Comment=string,Logging={Enabled=boolean,Bucket=string,Prefix=string},TrustedSigners={Enabled=boolean,Quantity=integer,Items=[string,string]},PriceClass=string,Enabled=boolean
JSON Syntax:
{
"CallerReference": "string",
"S3Origin": {
"DomainName": "string",
"OriginAccessIdentity": "string"
},
"Aliases": {
"Quantity": integer,
"Items": ["string", ...]
},
"Comment": "string",
"Logging": {
"Enabled": true|false,
"Bucket": "string",
"Prefix": "string"
},
"TrustedSigners": {
"Enabled": true|false,
"Quantity": integer,
"Items": ["string", ...]
},
"PriceClass": "PriceClass_100"|"PriceClass_200"|"PriceClass_All",
"Enabled": true|false
}
--cli-input-json
| --cli-input-yaml
(string)
Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton
. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml
.
--generate-cli-skeleton
(string)
Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input
, prints a sample input JSON that can be used as an argument for --cli-input-json
. Similarly, if provided yaml-input
it will print a sample input YAML that can be used with --cli-input-yaml
. If provided with the value output
, it validates the command inputs and returns a sample output JSON for that command.
--cli-auto-prompt
(boolean)
Automatically prompt for CLI input parameters.
See ‘aws help’ for descriptions of global parameters.
StreamingDistribution -> (structure)
The streaming distribution’s information.
Id -> (string)
The identifier for the RTMP distribution. For example:
EGTXBD79EXAMPLE
.ARN -> (string)
The ARN (Amazon Resource Name) for the distribution. For example:
arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5
, where123456789012
is your AWS account ID.Status -> (string)
The current status of the RTMP distribution. When the status is
Deployed
, the distribution’s information is propagated to all CloudFront edge locations.LastModifiedTime -> (timestamp)
The date and time that the distribution was last modified.
DomainName -> (string)
The domain name that corresponds to the streaming distribution, for example,
s5c39gqb8ow64r.cloudfront.net
.ActiveTrustedSigners -> (structure)
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 .
Enabled -> (boolean)
Enabled is
true
if any of the AWS accounts listed in theTrustedSigners
complex type for this distribution have active CloudFront key pairs. If not,Enabled
isfalse
.Quantity -> (integer)
The number of trusted signers specified in the
TrustedSigners
complex type.Items -> (list)
A complex type that contains one
Signer
complex type for each trusted signer that is specified in theTrustedSigners
complex type.(structure)
A complex type that lists the AWS accounts that were included in the
TrustedSigners
complex type, as well as their active CloudFront key pair IDs, if any.AwsAccountNumber -> (string)
An AWS account that is included in the
TrustedSigners
complex type for this distribution. Valid values include:
self
, which is the AWS account used to create the distribution.An AWS account number.
KeyPairIds -> (structure)
A complex type that lists the active CloudFront key pairs, if any, that are associated with
AwsAccountNumber
.Quantity -> (integer)
The number of active CloudFront key pairs for
AwsAccountNumber
.For more information, see ActiveTrustedSigners .
Items -> (list)
A complex type that lists the active CloudFront key pairs, if any, that are associated with
AwsAccountNumber
.For more information, see ActiveTrustedSigners .
(string)
StreamingDistributionConfig -> (structure)
The current configuration information for the RTMP distribution.
CallerReference -> (string)
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.S3Origin -> (structure)
A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.
DomainName -> (string)
The DNS name of the Amazon S3 origin.
OriginAccessIdentity -> (string)
The CloudFront origin access identity to associate with the distribution. Use an origin access identity to configure the distribution so that end users can only access objects in an Amazon S3 bucket through CloudFront.
If you want end users to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty
OriginAccessIdentity
element.To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty
OriginAccessIdentity
element.To replace the origin access identity, update the distribution configuration and specify the new origin access identity.
For more information, see Using an Origin Access Identity to Restrict Access to Your Amazon S3 Content in the Amazon CloudFront Developer Guide .
Aliases -> (structure)
A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution.
Quantity -> (integer)
The number of CNAME aliases, if any, that you want to associate with this distribution.
Items -> (list)
A complex type that contains the CNAME aliases, if any, that you want to associate with this distribution.
(string)
Comment -> (string)
Any comments you want to include about the streaming distribution.
Logging -> (structure)
A complex type that controls whether access logs are written for the streaming distribution.
Enabled -> (boolean)
Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket. If you don’t want to enable logging when you create a streaming distribution or if you want to disable logging for an existing streaming distribution, specify
false
forEnabled
, and specifyempty Bucket
andPrefix
elements. If you specifyfalse
forEnabled
but you specify values forBucket
andPrefix
, the values are automatically deleted.Bucket -> (string)
The Amazon S3 bucket to store the access logs in, for example,
myawslogbucket.s3.amazonaws.com
.Prefix -> (string)
An optional string that you want CloudFront to prefix to the access log filenames for this streaming distribution, for example,
myprefix/
. If you want to enable logging, but you don’t want to specify a prefix, you still must include an emptyPrefix
element in theLogging
element.TrustedSigners -> (structure)
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 .
Enabled -> (boolean)
Specifies whether you want to require viewers to use signed URLs to access the files specified by
PathPattern
andTargetOriginId
.Quantity -> (integer)
The number of trusted signers for this cache behavior.
Items -> (list)
Optional : A complex type that contains trusted signers for this cache behavior. If
Quantity
is0
, you can omitItems
.(string)
PriceClass -> (string)
A complex type that contains information about price class for this streaming distribution.
Enabled -> (boolean)
Whether the streaming distribution is enabled to accept user requests for content.
Location -> (string)
The fully qualified URI of the new streaming distribution resource just created.
ETag -> (string)
The current version of the streaming distribution created.