The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

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 CloudFront API actions, data types, and errors. For detailed information about CloudFront features, see the Amazon CloudFront Developer Guide.

For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31

METHODS

CreateCachePolicy

CachePolicyConfig => Paws::CloudFront::CachePolicyConfig

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

Returns: a Paws::CloudFront::CreateCachePolicyResult instance

Creates a cache policy.

After you create a cache policy, you can attach it to one or more cache behaviors. When it’s attached to a cache behavior, the cache policy determines the following:

  • The values that CloudFront includes in the cache key. These values can include HTTP headers, cookies, and URL query strings. CloudFront uses the cache key to find an object in its cache that it can return to the viewer.

  • The default, minimum, and maximum time to live (TTL) values that you want objects to stay in the CloudFront cache.

The headers, cookies, and query strings that are included in the cache key are automatically included in requests that CloudFront sends to the origin. CloudFront sends a request when it can’t find an object in its cache that matches the request’s cache key. If you want to send values to the origin but not include them in the cache key, use OriginRequestPolicy.

For more information about cache policies, see Controlling the cache key (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html) in the Amazon CloudFront Developer Guide.

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 (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) in the 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. You create a CloudFront distribution to tell CloudFront where you want content to be delivered from, and the details about how to track and manage content delivery. Send a POST request to the /CloudFront API version/distribution/distribution ID resource.

When you update a distribution, there are more required fields than when you create a distribution. When you update your distribution by using UpdateDistribution (https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistribution.html), follow the steps included in the documentation to get the current configuration and then make your updates. This helps to make sure that you include all of the required fields. To view a summary, see Required Fields for Create Distribution and Update Distribution (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-overview-required-fields.html) in the Amazon CloudFront Developer Guide.

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.

CreateFieldLevelEncryptionConfig

FieldLevelEncryptionConfig => Paws::CloudFront::FieldLevelEncryptionConfig

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

Returns: a Paws::CloudFront::CreateFieldLevelEncryptionConfigResult instance

Create a new field-level encryption configuration.

CreateFieldLevelEncryptionProfile

FieldLevelEncryptionProfileConfig => Paws::CloudFront::FieldLevelEncryptionProfileConfig

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

Returns: a Paws::CloudFront::CreateFieldLevelEncryptionProfileResult instance

Create a field-level encryption profile.

CreateFunction

FunctionCode => Str
FunctionConfig => Paws::CloudFront::FunctionConfig
Name => Str

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

Returns: a Paws::CloudFront::CreateFunctionResult instance

Creates a CloudFront function.

To create a function, you provide the function code and some configuration information about the function. The response contains an Amazon Resource Name (ARN) that uniquely identifies the function.

When you create a function, it’s in the DEVELOPMENT stage. In this stage, you can test the function with TestFunction, and update it with UpdateFunction.

When you’re ready to use your function with a CloudFront distribution, use PublishFunction to copy the function from the DEVELOPMENT stage to LIVE. When it’s live, you can attach the function to a distribution’s cache behavior, using the function’s ARN.

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.

CreateKeyGroup

KeyGroupConfig => Paws::CloudFront::KeyGroupConfig

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

Returns: a Paws::CloudFront::CreateKeyGroupResult instance

Creates a key group that you can use with CloudFront signed URLs and signed cookies (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html).

To create a key group, you must specify at least one public key for the key group. After you create a key group, you can reference it from one or more cache behaviors. When you reference a key group in a cache behavior, CloudFront requires signed URLs or signed cookies for all requests that match the cache behavior. The URLs or cookies must be signed with a private key whose corresponding public key is in the key group. The signed URL or cookie contains information about which public key CloudFront should use to verify the signature. For more information, see Serving private content (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) in the Amazon CloudFront Developer Guide.

CreateMonitoringSubscription

DistributionId => Str
MonitoringSubscription => Paws::CloudFront::MonitoringSubscription

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

Returns: a Paws::CloudFront::CreateMonitoringSubscriptionResult instance

Enables additional CloudWatch metrics for the specified CloudFront distribution. The additional metrics incur an additional cost.

For more information, see Viewing additional CloudFront distribution metrics (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/viewing-cloudfront-metrics.html#monitoring-console.distributions-additional) in the Amazon CloudFront Developer Guide.

CreateOriginRequestPolicy

OriginRequestPolicyConfig => Paws::CloudFront::OriginRequestPolicyConfig

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

Returns: a Paws::CloudFront::CreateOriginRequestPolicyResult instance

Creates an origin request policy.

After you create an origin request policy, you can attach it to one or more cache behaviors. When it’s attached to a cache behavior, the origin request policy determines the values that CloudFront includes in requests that it sends to the origin. Each request that CloudFront sends to the origin includes the following:

  • The request body and the URL path (without the domain name) from the viewer request.

  • The headers that CloudFront automatically includes in every origin request, including Host, User-Agent, and X-Amz-Cf-Id.

  • All HTTP headers, cookies, and URL query strings that are specified in the cache policy or the origin request policy. These can include items from the viewer request and, in the case of headers, additional ones that are added by CloudFront.

CloudFront sends a request when it can’t find a valid object in its cache that matches the request. If you want to send values to the origin and also include them in the cache key, use CachePolicy.

For more information about origin request policies, see Controlling origin requests (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html) in the Amazon CloudFront Developer Guide.

CreatePublicKey

PublicKeyConfig => Paws::CloudFront::PublicKeyConfig

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

Returns: a Paws::CloudFront::CreatePublicKeyResult instance

Uploads a public key to CloudFront that you can use with signed URLs and signed cookies (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html), or with field-level encryption (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html).

CreateRealtimeLogConfig

EndPoints => ArrayRef[Paws::CloudFront::EndPoint]
Fields => ArrayRef[Str|Undef]
Name => Str
SamplingRate => Int

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

Returns: a Paws::CloudFront::CreateRealtimeLogConfigResult instance

Creates a real-time log configuration.

After you create a real-time log configuration, you can attach it to one or more cache behaviors to send real-time log data to the specified Amazon Kinesis data stream.

For more information about real-time log configurations, see Real-time logs (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/real-time-logs.html) in the Amazon CloudFront Developer Guide.

CreateStreamingDistribution

StreamingDistributionConfig => Paws::CloudFront::StreamingDistributionConfig

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

Returns: a Paws::CloudFront::CreateStreamingDistributionResult instance

This API is deprecated. Amazon CloudFront is deprecating real-time messaging protocol (RTMP) distributions on December 31, 2020. For more information, read the announcement (http://forums.aws.amazon.com/ann.jspa?annID=7356) on the Amazon CloudFront discussion forum.

CreateStreamingDistributionWithTags

StreamingDistributionConfigWithTags => Paws::CloudFront::StreamingDistributionConfigWithTags

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

Returns: a Paws::CloudFront::CreateStreamingDistributionWithTagsResult instance

This API is deprecated. Amazon CloudFront is deprecating real-time messaging protocol (RTMP) distributions on December 31, 2020. For more information, read the announcement (http://forums.aws.amazon.com/ann.jspa?annID=7356) on the Amazon CloudFront discussion forum.

DeleteCachePolicy

Id => Str
[IfMatch => Str]

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

Returns: nothing

Deletes a cache policy.

You cannot delete a cache policy if it’s attached to a cache behavior. First update your distributions to remove the cache policy from all cache behaviors, then delete the cache policy.

To delete a cache policy, you must provide the policy’s identifier and version. To get these values, you can use ListCachePolicies or GetCachePolicy.

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.

DeleteFieldLevelEncryptionConfig

Id => Str
[IfMatch => Str]

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

Returns: nothing

Remove a field-level encryption configuration.

DeleteFieldLevelEncryptionProfile

Id => Str
[IfMatch => Str]

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

Returns: nothing

Remove a field-level encryption profile.

DeleteFunction

IfMatch => Str
Name => Str

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

Returns: nothing

Deletes a CloudFront function.

You cannot delete a function if it’s associated with a cache behavior. First, update your distributions to remove the function association from all cache behaviors, then delete the function.

To delete a function, you must provide the function’s name and version (ETag value). To get these values, you can use ListFunctions and DescribeFunction.

DeleteKeyGroup

Id => Str
[IfMatch => Str]

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

Returns: nothing

Deletes a key group.

You cannot delete a key group that is referenced in a cache behavior. First update your distributions to remove the key group from all cache behaviors, then delete the key group.

To delete a key group, you must provide the key group’s identifier and version. To get these values, use ListKeyGroups followed by GetKeyGroup or GetKeyGroupConfig.

DeleteMonitoringSubscription

DistributionId => Str

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

Returns: a Paws::CloudFront::DeleteMonitoringSubscriptionResult instance

Disables additional CloudWatch metrics for the specified CloudFront distribution.

DeleteOriginRequestPolicy

Id => Str
[IfMatch => Str]

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

Returns: nothing

Deletes an origin request policy.

You cannot delete an origin request policy if it’s attached to any cache behaviors. First update your distributions to remove the origin request policy from all cache behaviors, then delete the origin request policy.

To delete an origin request policy, you must provide the policy’s identifier and version. To get the identifier, you can use ListOriginRequestPolicies or GetOriginRequestPolicy.

DeletePublicKey

Id => Str
[IfMatch => Str]

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

Returns: nothing

Remove a public key you previously added to CloudFront.

DeleteRealtimeLogConfig

[ARN => Str]
[Name => Str]

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

Returns: nothing

Deletes a real-time log configuration.

You cannot delete a real-time log configuration if it’s attached to a cache behavior. First update your distributions to remove the real-time log configuration from all cache behaviors, then delete the real-time log configuration.

To delete a real-time log configuration, you can provide the configuration’s name or its Amazon Resource Name (ARN). You must provide at least one. If you provide both, CloudFront uses the name to identify the real-time log configuration to delete.

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 (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/HowToDeleteDistribution.html) in the Amazon CloudFront Developer Guide.

DescribeFunction

Name => Str
[Stage => Str]

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

Returns: a Paws::CloudFront::DescribeFunctionResult instance

Gets configuration information and metadata about a CloudFront function, but not the function’s code. To get a function’s code, use GetFunction.

To get configuration information and metadata about a function, you must provide the function’s name and stage. To get these values, you can use ListFunctions.

GetCachePolicy

Id => Str

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

Returns: a Paws::CloudFront::GetCachePolicyResult instance

Gets a cache policy, including the following metadata:

  • The policy’s identifier.

  • The date and time when the policy was last modified.

To get a cache policy, you must provide the policy’s identifier. If the cache policy is attached to a distribution’s cache behavior, you can get the policy’s identifier using ListDistributions or GetDistribution. If the cache policy is not attached to a cache behavior, you can get the identifier using ListCachePolicies.

GetCachePolicyConfig

Id => Str

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

Returns: a Paws::CloudFront::GetCachePolicyConfigResult instance

Gets a cache policy configuration.

To get a cache policy configuration, you must provide the policy’s identifier. If the cache policy is attached to a distribution’s cache behavior, you can get the policy’s identifier using ListDistributions or GetDistribution. If the cache policy is not attached to a cache behavior, you can get the identifier using ListCachePolicies.

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.

GetFieldLevelEncryption

Id => Str

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

Returns: a Paws::CloudFront::GetFieldLevelEncryptionResult instance

Get the field-level encryption configuration information.

GetFieldLevelEncryptionConfig

Id => Str

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

Returns: a Paws::CloudFront::GetFieldLevelEncryptionConfigResult instance

Get the field-level encryption configuration information.

GetFieldLevelEncryptionProfile

Id => Str

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

Returns: a Paws::CloudFront::GetFieldLevelEncryptionProfileResult instance

Get the field-level encryption profile information.

GetFieldLevelEncryptionProfileConfig

Id => Str

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

Returns: a Paws::CloudFront::GetFieldLevelEncryptionProfileConfigResult instance

Get the field-level encryption profile configuration information.

GetFunction

Name => Str
[Stage => Str]

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

Returns: a Paws::CloudFront::GetFunctionResult instance

Gets the code of a CloudFront function. To get configuration information and metadata about a function, use DescribeFunction.

To get a function’s code, you must provide the function’s name and stage. To get these values, you can use ListFunctions.

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.

GetKeyGroup

Id => Str

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

Returns: a Paws::CloudFront::GetKeyGroupResult instance

Gets a key group, including the date and time when the key group was last modified.

To get a key group, you must provide the key group’s identifier. If the key group is referenced in a distribution’s cache behavior, you can get the key group’s identifier using ListDistributions or GetDistribution. If the key group is not referenced in a cache behavior, you can get the identifier using ListKeyGroups.

GetKeyGroupConfig

Id => Str

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

Returns: a Paws::CloudFront::GetKeyGroupConfigResult instance

Gets a key group configuration.

To get a key group configuration, you must provide the key group’s identifier. If the key group is referenced in a distribution’s cache behavior, you can get the key group’s identifier using ListDistributions or GetDistribution. If the key group is not referenced in a cache behavior, you can get the identifier using ListKeyGroups.

GetMonitoringSubscription

DistributionId => Str

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

Returns: a Paws::CloudFront::GetMonitoringSubscriptionResult instance

Gets information about whether additional CloudWatch metrics are enabled for the specified CloudFront distribution.

GetOriginRequestPolicy

Id => Str

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

Returns: a Paws::CloudFront::GetOriginRequestPolicyResult instance

Gets an origin request policy, including the following metadata:

  • The policy’s identifier.

  • The date and time when the policy was last modified.

To get an origin request policy, you must provide the policy’s identifier. If the origin request policy is attached to a distribution’s cache behavior, you can get the policy’s identifier using ListDistributions or GetDistribution. If the origin request policy is not attached to a cache behavior, you can get the identifier using ListOriginRequestPolicies.

GetOriginRequestPolicyConfig

Id => Str

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

Returns: a Paws::CloudFront::GetOriginRequestPolicyConfigResult instance

Gets an origin request policy configuration.

To get an origin request policy configuration, you must provide the policy’s identifier. If the origin request policy is attached to a distribution’s cache behavior, you can get the policy’s identifier using ListDistributions or GetDistribution. If the origin request policy is not attached to a cache behavior, you can get the identifier using ListOriginRequestPolicies.

GetPublicKey

Id => Str

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

Returns: a Paws::CloudFront::GetPublicKeyResult instance

Gets a public key.

GetPublicKeyConfig

Id => Str

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

Returns: a Paws::CloudFront::GetPublicKeyConfigResult instance

Gets a public key configuration.

GetRealtimeLogConfig

[ARN => Str]
[Name => Str]

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

Returns: a Paws::CloudFront::GetRealtimeLogConfigResult instance

Gets a real-time log configuration.

To get a real-time log configuration, you can provide the configuration’s name or its Amazon Resource Name (ARN). You must provide at least one. If you provide both, CloudFront uses the name to identify the real-time log configuration to get.

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.

ListCachePolicies

[Marker => Str]
[MaxItems => Str]
[Type => Str]

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

Returns: a Paws::CloudFront::ListCachePoliciesResult instance

Gets a list of cache policies.

You can optionally apply a filter to return only the managed policies created by AWS, or only the custom policies created in your AWS account.

You can optionally specify the maximum number of items to receive in the response. If the total number of items in the list exceeds the maximum that you specify, or the default maximum, the response is paginated. To get the next page of items, send a subsequent request that specifies the NextMarker value from the current response as the Marker value in the subsequent request.

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 CloudFront distributions.

ListDistributionsByCachePolicyId

CachePolicyId => Str
[Marker => Str]
[MaxItems => Str]

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

Returns: a Paws::CloudFront::ListDistributionsByCachePolicyIdResult instance

Gets a list of distribution IDs for distributions that have a cache behavior that’s associated with the specified cache policy.

You can optionally specify the maximum number of items to receive in the response. If the total number of items in the list exceeds the maximum that you specify, or the default maximum, the response is paginated. To get the next page of items, send a subsequent request that specifies the NextMarker value from the current response as the Marker value in the subsequent request.

ListDistributionsByKeyGroup

KeyGroupId => Str
[Marker => Str]
[MaxItems => Str]

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

Returns: a Paws::CloudFront::ListDistributionsByKeyGroupResult instance

Gets a list of distribution IDs for distributions that have a cache behavior that references the specified key group.

You can optionally specify the maximum number of items to receive in the response. If the total number of items in the list exceeds the maximum that you specify, or the default maximum, the response is paginated. To get the next page of items, send a subsequent request that specifies the NextMarker value from the current response as the Marker value in the subsequent request.

ListDistributionsByOriginRequestPolicyId

OriginRequestPolicyId => Str
[Marker => Str]
[MaxItems => Str]

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

Returns: a Paws::CloudFront::ListDistributionsByOriginRequestPolicyIdResult instance

Gets a list of distribution IDs for distributions that have a cache behavior that’s associated with the specified origin request policy.

You can optionally specify the maximum number of items to receive in the response. If the total number of items in the list exceeds the maximum that you specify, or the default maximum, the response is paginated. To get the next page of items, send a subsequent request that specifies the NextMarker value from the current response as the Marker value in the subsequent request.

ListDistributionsByRealtimeLogConfig

[Marker => Str]
[MaxItems => Str]
[RealtimeLogConfigArn => Str]
[RealtimeLogConfigName => Str]

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

Returns: a Paws::CloudFront::ListDistributionsByRealtimeLogConfigResult instance

Gets a list of distributions that have a cache behavior that’s associated with the specified real-time log configuration.

You can specify the real-time log configuration by its name or its Amazon Resource Name (ARN). You must provide at least one. If you provide both, CloudFront uses the name to identify the real-time log configuration to list distributions for.

You can optionally specify the maximum number of items to receive in the response. If the total number of items in the list exceeds the maximum that you specify, or the default maximum, the response is paginated. To get the next page of items, send a subsequent request that specifies the NextMarker value from the current response as the Marker value in the subsequent request.

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.

ListFieldLevelEncryptionConfigs

[Marker => Str]
[MaxItems => Str]

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

Returns: a Paws::CloudFront::ListFieldLevelEncryptionConfigsResult instance

List all field-level encryption configurations that have been created in CloudFront for this account.

ListFieldLevelEncryptionProfiles

[Marker => Str]
[MaxItems => Str]

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

Returns: a Paws::CloudFront::ListFieldLevelEncryptionProfilesResult instance

Request a list of field-level encryption profiles that have been created in CloudFront for this account.

ListFunctions

[Marker => Str]
[MaxItems => Str]
[Stage => Str]

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

Returns: a Paws::CloudFront::ListFunctionsResult instance

Gets a list of all CloudFront functions in your AWS account.

You can optionally apply a filter to return only the functions that are in the specified stage, either DEVELOPMENT or LIVE.

You can optionally specify the maximum number of items to receive in the response. If the total number of items in the list exceeds the maximum that you specify, or the default maximum, the response is paginated. To get the next page of items, send a subsequent request that specifies the NextMarker value from the current response as the Marker value in the subsequent request.

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.

ListKeyGroups

[Marker => Str]
[MaxItems => Str]

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

Returns: a Paws::CloudFront::ListKeyGroupsResult instance

Gets a list of key groups.

You can optionally specify the maximum number of items to receive in the response. If the total number of items in the list exceeds the maximum that you specify, or the default maximum, the response is paginated. To get the next page of items, send a subsequent request that specifies the NextMarker value from the current response as the Marker value in the subsequent request.

ListOriginRequestPolicies

[Marker => Str]
[MaxItems => Str]
[Type => Str]

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

Returns: a Paws::CloudFront::ListOriginRequestPoliciesResult instance

Gets a list of origin request policies.

You can optionally apply a filter to return only the managed policies created by AWS, or only the custom policies created in your AWS account.

You can optionally specify the maximum number of items to receive in the response. If the total number of items in the list exceeds the maximum that you specify, or the default maximum, the response is paginated. To get the next page of items, send a subsequent request that specifies the NextMarker value from the current response as the Marker value in the subsequent request.

ListPublicKeys

[Marker => Str]
[MaxItems => Str]

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

Returns: a Paws::CloudFront::ListPublicKeysResult instance

List all public keys that have been added to CloudFront for this account.

ListRealtimeLogConfigs

[Marker => Str]
[MaxItems => Str]

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

Returns: a Paws::CloudFront::ListRealtimeLogConfigsResult instance

Gets a list of real-time log configurations.

You can optionally specify the maximum number of items to receive in the response. If the total number of items in the list exceeds the maximum that you specify, or the default maximum, the response is paginated. To get the next page of items, send a subsequent request that specifies the NextMarker value from the current response as the Marker value in the subsequent request.

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.

PublishFunction

IfMatch => Str
Name => Str

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

Returns: a Paws::CloudFront::PublishFunctionResult instance

Publishes a CloudFront function by copying the function code from the DEVELOPMENT stage to LIVE. This automatically updates all cache behaviors that are using this function to use the newly published copy in the LIVE stage.

When a function is published to the LIVE stage, you can attach the function to a distribution’s cache behavior, using the function’s Amazon Resource Name (ARN).

To publish a function, you must provide the function’s name and version (ETag value). To get these values, you can use ListFunctions and DescribeFunction.

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.

TestFunction

EventObject => Str
IfMatch => Str
Name => Str
[Stage => Str]

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

Returns: a Paws::CloudFront::TestFunctionResult instance

Tests a CloudFront function.

To test a function, you provide an event object that represents an HTTP request or response that your CloudFront distribution could receive in production. CloudFront runs the function, passing it the event object that you provided, and returns the function’s result (the modified event object) in the response. The response also contains function logs and error messages, if any exist. For more information about testing functions, see Testing functions (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/managing-functions.html#test-function) in the Amazon CloudFront Developer Guide.

To test a function, you provide the function’s name and version (ETag value) along with the event object. To get the function’s name and version, you can use ListFunctions and DescribeFunction.

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.

UpdateCachePolicy

CachePolicyConfig => Paws::CloudFront::CachePolicyConfig
Id => Str
[IfMatch => Str]

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

Returns: a Paws::CloudFront::UpdateCachePolicyResult instance

Updates a cache policy configuration.

When you update a cache policy configuration, all the fields are updated with the values provided in the request. You cannot update some fields independent of others. To update a cache policy configuration:

  1. Use GetCachePolicyConfig to get the current configuration.

  2. Locally modify the fields in the cache policy configuration that you want to update.

  3. Call UpdateCachePolicy by providing the entire cache policy configuration, including the fields that you modified and those that you didn’t.

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

Updates the configuration for a web distribution.

When you update a distribution, there are more required fields than when you create a distribution. When you update your distribution by using this API action, follow the steps here to get the current configuration and then make your updates, to make sure that you include all of the required fields. To view a summary, see Required Fields for Create Distribution and Update Distribution (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-overview-required-fields.html) in the Amazon CloudFront Developer Guide.

The update process includes getting the current distribution configuration, updating the XML document that is returned to make your changes, and then submitting an UpdateDistribution request to make the updates.

For information about updating a distribution using the CloudFront console instead, see Creating a Distribution (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-creating-console.html) in the Amazon CloudFront Developer Guide.

To update a web distribution using the CloudFront API

  1. Submit a GetDistributionConfig (https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_GetDistributionConfig.html) request to get the current configuration and an Etag header for the distribution.

    If you update the distribution again, you must get a new Etag header.

  2. Update the XML document that was returned in the response to your GetDistributionConfig request to include your changes.

    When you edit the XML file, be aware of the following:

    • You must strip out the ETag parameter that is returned.

    • Additional fields are required when you update a distribution. There may be fields included in the XML file for features that you haven't configured for your distribution. This is expected and required to successfully update the distribution.

    • You can't change the value of CallerReference. If you try to change this value, CloudFront returns an IllegalUpdate error.

    • The new configuration replaces the existing configuration; the values that you specify in an UpdateDistribution request are not merged into your existing configuration. When you add, delete, or replace values in an element that allows multiple values (for example, CNAME), you must specify all of the values that you want to appear in the updated distribution. In addition, you must update the corresponding Quantity element.

  3. Submit an UpdateDistribution request to update the configuration for your distribution:

    • In the request body, include the XML document that you updated in Step 2. The request body must include an XML document with a DistributionConfig element.

    • Set the value of the HTTP If-Match header to the value of the ETag header that CloudFront returned when you submitted the GetDistributionConfig request in Step 1.

  4. Review the response to the UpdateDistribution request to confirm that the configuration was successfully updated.

  5. Optional: Submit a GetDistribution (https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_GetDistribution.html) request to confirm that your changes have propagated. When propagation is complete, the value of Status is Deployed.

UpdateFieldLevelEncryptionConfig

FieldLevelEncryptionConfig => Paws::CloudFront::FieldLevelEncryptionConfig
Id => Str
[IfMatch => Str]

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

Returns: a Paws::CloudFront::UpdateFieldLevelEncryptionConfigResult instance

Update a field-level encryption configuration.

UpdateFieldLevelEncryptionProfile

FieldLevelEncryptionProfileConfig => Paws::CloudFront::FieldLevelEncryptionProfileConfig
Id => Str
[IfMatch => Str]

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

Returns: a Paws::CloudFront::UpdateFieldLevelEncryptionProfileResult instance

Update a field-level encryption profile.

UpdateFunction

FunctionCode => Str
FunctionConfig => Paws::CloudFront::FunctionConfig
IfMatch => Str
Name => Str

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

Returns: a Paws::CloudFront::UpdateFunctionResult instance

Updates a CloudFront function.

You can update a function’s code or the comment that describes the function. You cannot update a function’s name.

To update a function, you provide the function’s name and version (ETag value) along with the updated function code. To get the name and version, you can use ListFunctions and DescribeFunction.

UpdateKeyGroup

Id => Str
KeyGroupConfig => Paws::CloudFront::KeyGroupConfig
[IfMatch => Str]

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

Returns: a Paws::CloudFront::UpdateKeyGroupResult instance

Updates a key group.

When you update a key group, all the fields are updated with the values provided in the request. You cannot update some fields independent of others. To update a key group:

  1. Get the current key group with GetKeyGroup or GetKeyGroupConfig.

  2. Locally modify the fields in the key group that you want to update. For example, add or remove public key IDs.

  3. Call UpdateKeyGroup with the entire key group object, including the fields that you modified and those that you didn’t.

UpdateOriginRequestPolicy

Id => Str
OriginRequestPolicyConfig => Paws::CloudFront::OriginRequestPolicyConfig
[IfMatch => Str]

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

Returns: a Paws::CloudFront::UpdateOriginRequestPolicyResult instance

Updates an origin request policy configuration.

When you update an origin request policy configuration, all the fields are updated with the values provided in the request. You cannot update some fields independent of others. To update an origin request policy configuration:

  1. Use GetOriginRequestPolicyConfig to get the current configuration.

  2. Locally modify the fields in the origin request policy configuration that you want to update.

  3. Call UpdateOriginRequestPolicy by providing the entire origin request policy configuration, including the fields that you modified and those that you didn’t.

UpdatePublicKey

Id => Str
PublicKeyConfig => Paws::CloudFront::PublicKeyConfig
[IfMatch => Str]

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

Returns: a Paws::CloudFront::UpdatePublicKeyResult instance

Update public key information. Note that the only value you can change is the comment.

UpdateRealtimeLogConfig

[ARN => Str]
[EndPoints => ArrayRef[Paws::CloudFront::EndPoint]]
[Fields => ArrayRef[Str|Undef]]
[Name => Str]
[SamplingRate => Int]

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

Returns: a Paws::CloudFront::UpdateRealtimeLogConfigResult instance

Updates a real-time log configuration.

When you update a real-time log configuration, all the parameters are updated with the values provided in the request. You cannot update some parameters independent of others. To update a real-time log configuration:

  1. Call GetRealtimeLogConfig to get the current real-time log configuration.

  2. Locally modify the parameters in the real-time log configuration that you want to update.

  3. Call this API (UpdateRealtimeLogConfig) by providing the entire real-time log configuration, including the parameters that you modified and those that you didn’t.

You cannot update a real-time log configuration’s Name or ARN.

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