baiji v0.6.11 Baiji.CloudFront

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.

Link to this section Summary

Functions

Returns a map containing the input/output shapes for this endpoint

Outputs values common to all actions

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 Amazon CloudFront Developer Guide

Creates a new web distribution. Send a POST request to the /*CloudFront API version*/distribution/distribution ID resource

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

Create a new streaming distribution with tags

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

Get the information about an origin access identity

Get the configuration information about an origin access identity

Get the information about a distribution

Get the configuration information about a distribution

Get the information about an invalidation

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

Get the configuration information about a streaming distribution

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

List tags for a CloudFront resource

Add tags to a CloudFront resource

Remove tags from a CloudFront resource

Updates the configuration for a web distribution. Perform the following steps

Link to this section Functions

Returns a map containing the input/output shapes for this endpoint

Outputs values common to all actions

Link to this function create_cloud_front_origin_access_identity(input \\ %{}, options \\ [])

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 Amazon CloudFront Developer Guide.

Link to this function create_distribution(input \\ %{}, options \\ [])

Creates a new web distribution. Send a POST request to the /*CloudFront API version*/distribution/distribution ID resource.

Link to this function create_distribution_with_tags(input \\ %{}, options \\ [])

Create a new distribution with tags.

Link to this function create_invalidation(input \\ %{}, options \\ [])

Create a new invalidation.

Link to this function create_streaming_distribution(input \\ %{}, options \\ [])

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.
Link to this function create_streaming_distribution_with_tags(input \\ %{}, options \\ [])

Create a new streaming distribution with tags.

Link to this function delete_cloud_front_origin_access_identity(input \\ %{}, options \\ [])

Delete an origin access identity.

Link to this function delete_distribution(input \\ %{}, options \\ [])

Delete a distribution.

Link to this function delete_streaming_distribution(input \\ %{}, options \\ [])

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](http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/HowToDeleteDistribution.html) in the *Amazon CloudFront Developer Guide*.
Link to this function get_cloud_front_origin_access_identity(input \\ %{}, options \\ [])

Get the information about an origin access identity.

Link to this function get_cloud_front_origin_access_identity_config(input \\ %{}, options \\ [])

Get the configuration information about an origin access identity.

Link to this function get_distribution(input \\ %{}, options \\ [])

Get the information about a distribution.

Link to this function get_distribution_config(input \\ %{}, options \\ [])

Get the configuration information about a distribution.

Link to this function get_invalidation(input \\ %{}, options \\ [])

Get the information about an invalidation.

Link to this function get_streaming_distribution(input \\ %{}, options \\ [])

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

Link to this function get_streaming_distribution_config(input \\ %{}, options \\ [])

Get the configuration information about a streaming distribution.

Link to this function list_cloud_front_origin_access_identities(input \\ %{}, options \\ [])

Lists origin access identities.

Link to this function list_distributions(input \\ %{}, options \\ [])

List distributions.

Link to this function list_distributions_by_web_a_c_l_id(input \\ %{}, options \\ [])

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

Link to this function list_invalidations(input \\ %{}, options \\ [])

Lists invalidation batches.

Link to this function list_streaming_distributions(input \\ %{}, options \\ [])

List streaming distributions.

Link to this function list_tags_for_resource(input \\ %{}, options \\ [])

List tags for a CloudFront resource.

Link to this function tag_resource(input \\ %{}, options \\ [])

Add tags to a CloudFront resource.

Link to this function untag_resource(input \\ %{}, options \\ [])

Remove tags from a CloudFront resource.

Link to this function update_cloud_front_origin_access_identity(input \\ %{}, options \\ [])

Update an origin access identity.

Link to this function update_distribution(input \\ %{}, options \\ [])

Updates the configuration for a web distribution. Perform the following steps.

For information about updating a distribution using the CloudFront console, see Creating or Updating a Web Distribution Using the CloudFront Console in the Amazon CloudFront Developer Guide.

To update a web distribution using the CloudFront API

  1. Submit a `GetDistributionConfig` request to get the current configuration and an `Etag` header for the distribution. If you update the distribution again, you need to get a new `Etag` header.
  2. Update the XML document that was returned in the response to your `GetDistributionConfig` request to include the desired changes. 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 the 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` request to confirm that your changes have propagated. When propagation is complete, the value of `Status` is `Deployed`. 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 distribution. 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 you're actually specifying.
Link to this function update_streaming_distribution(input \\ %{}, options \\ [])

Update a streaming distribution.