NAME

Paws::CloudFront - Perl Interface to AWS Amazon CloudFront

SYNOPSIS

use Paws;

my $obj = Paws->service('CloudFront');
my $res = $obj->Method(
  Arg1 => $val1,
  Arg2 => [ 'V1', 'V2' ],
  # if Arg3 is an object, the HashRef will be used as arguments to the constructor
  # of the arguments type
  Arg3 => { Att1 => 'Val1' },
  # if Arg4 is an array of objects, the HashRefs will be passed as arguments to
  # the constructor of the arguments type
  Arg4 => [ { Att1 => 'Val1'  }, { Att1 => 'Val2' } ],
);

DESCRIPTION

Amazon CloudFront

This is the Amazon CloudFront API Reference. This guide is for developers who need detailed information about the CloudFront API actions, data types, and errors. For detailed information about CloudFront features and their associated API calls, see the Amazon CloudFront Developer Guide.

METHODS

CreateCloudFrontOriginAccessIdentity(CloudFrontOriginAccessIdentityConfig => Paws::CloudFront::CloudFrontOriginAccessIdentityConfig)

Each argument is described in detail in: Paws::CloudFront::CreateCloudFrontOriginAccessIdentity

Returns: a Paws::CloudFront::CreateCloudFrontOriginAccessIdentityResult instance

Creates a new origin access identity. If you're using Amazon S3 for
your origin, you can use an origin access identity to require users to
access your content using a CloudFront URL instead of the Amazon S3
URL. For more information about how to use origin access identities,
see Serving Private Content through CloudFront in the I<Amazon
CloudFront Developer Guide>.

CreateDistribution(DistributionConfig => Paws::CloudFront::DistributionConfig)

Each argument is described in detail in: Paws::CloudFront::CreateDistribution

Returns: a Paws::CloudFront::CreateDistributionResult instance

Creates a new web distribution. Send a C<POST> request to the
C</I<CloudFront API version>/distribution>/C<distribution ID> resource.

CreateDistributionWithTags(DistributionConfigWithTags => Paws::CloudFront::DistributionConfigWithTags)

Each argument is described in detail in: Paws::CloudFront::CreateDistributionWithTags

Returns: a Paws::CloudFront::CreateDistributionWithTagsResult instance

Create a new distribution with tags.

CreateInvalidation(DistributionId => Str, InvalidationBatch => Paws::CloudFront::InvalidationBatch)

Each argument is described in detail in: Paws::CloudFront::CreateInvalidation

Returns: a Paws::CloudFront::CreateInvalidationResult instance

Create a new invalidation.

CreateStreamingDistribution(StreamingDistributionConfig => Paws::CloudFront::StreamingDistributionConfig)

Each argument is described in detail in: Paws::CloudFront::CreateStreamingDistribution

Returns: a Paws::CloudFront::CreateStreamingDistributionResult instance

Creates a new RMTP 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 web 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.

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.

CreateStreamingDistributionWithTags(StreamingDistributionConfigWithTags => Paws::CloudFront::StreamingDistributionConfigWithTags)

Each argument is described in detail in: Paws::CloudFront::CreateStreamingDistributionWithTags

Returns: a Paws::CloudFront::CreateStreamingDistributionWithTagsResult instance

Create a new streaming distribution with tags.

DeleteCloudFrontOriginAccessIdentity(Id => Str, [IfMatch => Str])

Each argument is described in detail in: Paws::CloudFront::DeleteCloudFrontOriginAccessIdentity

Returns: nothing

Delete an origin access identity.

DeleteDistribution(Id => Str, [IfMatch => Str])

Each argument is described in detail in: Paws::CloudFront::DeleteDistribution

Returns: nothing

Delete a distribution.

DeleteStreamingDistribution(Id => Str, [IfMatch => Str])

Each argument is described in detail in: Paws::CloudFront::DeleteStreamingDistribution

Returns: nothing

Delete a streaming distribution. To delete an RTMP distribution using
the CloudFront API, perform the following steps.

To delete an RTMP distribution using the CloudFront API:

  1. Disable the RTMP distribution.

  2. Submit a GET Streaming Distribution Config request to get the current configuration and the Etag header for the distribution.

  3. Update the XML document that was returned in the response to your GET Streaming Distribution Config request to change the value of Enabled to false.

  4. Submit a PUT Streaming Distribution Config request to update the configuration for your distribution. In the request body, include the XML document that you updated in Step 3. Then set the value of the HTTP If-Match header to the value of the ETag header that CloudFront returned when you submitted the GET Streaming Distribution Config request in Step 2.

  5. Review the response to the PUT Streaming Distribution Config request to confirm that the distribution was successfully disabled.

  6. Submit a GET Streaming Distribution Config request to confirm that your changes have propagated. When propagation is complete, the value of Status is Deployed.

  7. Submit a DELETE Streaming Distribution request. Set the value of the HTTP If-Match header to the value of the ETag header that CloudFront returned when you submitted the GET Streaming Distribution Config request in Step 2.

  8. Review the response to your DELETE Streaming Distribution request to confirm that the distribution was successfully deleted.

For information about deleting a distribution using the CloudFront console, see Deleting a Distribution in the Amazon CloudFront Developer Guide.

GetCloudFrontOriginAccessIdentity(Id => Str)

Each argument is described in detail in: Paws::CloudFront::GetCloudFrontOriginAccessIdentity

Returns: a Paws::CloudFront::GetCloudFrontOriginAccessIdentityResult instance

Get the information about an origin access identity.

GetCloudFrontOriginAccessIdentityConfig(Id => Str)

Each argument is described in detail in: Paws::CloudFront::GetCloudFrontOriginAccessIdentityConfig

Returns: a Paws::CloudFront::GetCloudFrontOriginAccessIdentityConfigResult instance

Get the configuration information about an origin access identity.

GetDistribution(Id => Str)

Each argument is described in detail in: Paws::CloudFront::GetDistribution

Returns: a Paws::CloudFront::GetDistributionResult instance

Get the information about a distribution.

GetDistributionConfig(Id => Str)

Each argument is described in detail in: Paws::CloudFront::GetDistributionConfig

Returns: a Paws::CloudFront::GetDistributionConfigResult instance

Get the configuration information about a distribution.

GetInvalidation(DistributionId => Str, Id => Str)

Each argument is described in detail in: Paws::CloudFront::GetInvalidation

Returns: a Paws::CloudFront::GetInvalidationResult instance

Get the information about an invalidation.

GetStreamingDistribution(Id => Str)

Each argument is described in detail in: Paws::CloudFront::GetStreamingDistribution

Returns: a Paws::CloudFront::GetStreamingDistributionResult instance

Gets information about a specified RTMP distribution, including the
distribution configuration.

GetStreamingDistributionConfig(Id => Str)

Each argument is described in detail in: Paws::CloudFront::GetStreamingDistributionConfig

Returns: a Paws::CloudFront::GetStreamingDistributionConfigResult instance

Get the configuration information about a streaming distribution.

ListCloudFrontOriginAccessIdentities([Marker => Str, MaxItems => Str])

Each argument is described in detail in: Paws::CloudFront::ListCloudFrontOriginAccessIdentities

Returns: a Paws::CloudFront::ListCloudFrontOriginAccessIdentitiesResult instance

Lists origin access identities.

ListDistributions([Marker => Str, MaxItems => Str])

Each argument is described in detail in: Paws::CloudFront::ListDistributions

Returns: a Paws::CloudFront::ListDistributionsResult instance

List distributions.

ListDistributionsByWebACLId(WebACLId => Str, [Marker => Str, MaxItems => Str])

Each argument is described in detail in: Paws::CloudFront::ListDistributionsByWebACLId

Returns: a Paws::CloudFront::ListDistributionsByWebACLIdResult instance

List the distributions that are associated with a specified AWS WAF web
ACL.

ListInvalidations(DistributionId => Str, [Marker => Str, MaxItems => Str])

Each argument is described in detail in: Paws::CloudFront::ListInvalidations

Returns: a Paws::CloudFront::ListInvalidationsResult instance

Lists invalidation batches.

ListStreamingDistributions([Marker => Str, MaxItems => Str])

Each argument is described in detail in: Paws::CloudFront::ListStreamingDistributions

Returns: a Paws::CloudFront::ListStreamingDistributionsResult instance

List streaming distributions.

ListTagsForResource(Resource => Str)

Each argument is described in detail in: Paws::CloudFront::ListTagsForResource

Returns: a Paws::CloudFront::ListTagsForResourceResult instance

List tags for a CloudFront resource.

TagResource(Resource => Str, Tags => Paws::CloudFront::Tags)

Each argument is described in detail in: Paws::CloudFront::TagResource

Returns: nothing

Add tags to a CloudFront resource.

UntagResource(Resource => Str, TagKeys => Paws::CloudFront::TagKeys)

Each argument is described in detail in: Paws::CloudFront::UntagResource

Returns: nothing

Remove tags from a CloudFront resource.

UpdateCloudFrontOriginAccessIdentity(CloudFrontOriginAccessIdentityConfig => Paws::CloudFront::CloudFrontOriginAccessIdentityConfig, Id => Str, [IfMatch => Str])

Each argument is described in detail in: Paws::CloudFront::UpdateCloudFrontOriginAccessIdentity

Returns: a Paws::CloudFront::UpdateCloudFrontOriginAccessIdentityResult instance

Update an origin access identity.

UpdateDistribution(DistributionConfig => Paws::CloudFront::DistributionConfig, Id => Str, [IfMatch => Str])

Each argument is described in detail in: Paws::CloudFront::UpdateDistribution

Returns: a Paws::CloudFront::UpdateDistributionResult instance

Update a distribution.

UpdateStreamingDistribution(Id => Str, StreamingDistributionConfig => Paws::CloudFront::StreamingDistributionConfig, [IfMatch => Str])

Each argument is described in detail in: Paws::CloudFront::UpdateStreamingDistribution

Returns: a Paws::CloudFront::UpdateStreamingDistributionResult instance

Update a streaming distribution.

PAGINATORS

Paginator methods are helpers that repetively call methods that return partial results

ListAllCloudFrontOriginAccessIdentities(sub { },[Marker => Str, MaxItems => Str])

ListAllCloudFrontOriginAccessIdentities([Marker => Str, MaxItems => Str])

If passed a sub as first parameter, it will call the sub for each element found in :

- CloudFrontOriginAccessIdentityList.Items, passing the object as the first parameter, and the string 'CloudFrontOriginAccessIdentityList.Items' as the second parameter 

If not, it will return a a Paws::CloudFront::ListCloudFrontOriginAccessIdentitiesResult instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

ListAllDistributions(sub { },[Marker => Str, MaxItems => Str])

ListAllDistributions([Marker => Str, MaxItems => Str])

If passed a sub as first parameter, it will call the sub for each element found in :

- DistributionList.Items, passing the object as the first parameter, and the string 'DistributionList.Items' as the second parameter 

If not, it will return a a Paws::CloudFront::ListDistributionsResult instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

ListAllInvalidations(sub { },DistributionId => Str, [Marker => Str, MaxItems => Str])

ListAllInvalidations(DistributionId => Str, [Marker => Str, MaxItems => Str])

If passed a sub as first parameter, it will call the sub for each element found in :

- InvalidationList.Items, passing the object as the first parameter, and the string 'InvalidationList.Items' as the second parameter 

If not, it will return a a Paws::CloudFront::ListInvalidationsResult instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

ListAllStreamingDistributions(sub { },[Marker => Str, MaxItems => Str])

ListAllStreamingDistributions([Marker => Str, MaxItems => Str])

If passed a sub as first parameter, it will call the sub for each element found in :

- StreamingDistributionList.Items, passing the object as the first parameter, and the string 'StreamingDistributionList.Items' as the second parameter 

If not, it will return a a Paws::CloudFront::ListStreamingDistributionsResult instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

SEE ALSO

This service class forms part of Paws

BUGS and CONTRIBUTIONS

The source code is located here: https://github.com/pplu/aws-sdk-perl

Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues