lib/aws-sdk-cloudfront/client.rb in aws-sdk-cloudfront-1.0.0.rc2 vs lib/aws-sdk-cloudfront/client.rb in aws-sdk-cloudfront-1.0.0.rc3
- old
+ new
@@ -1,8 +1,8 @@
# WARNING ABOUT GENERATED CODE
#
-# This file is generated. See the contributing for info on making contributions:
+# This file is generated. See the contributing guide for more information:
# https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
#
# WARNING ABOUT GENERATED CODE
require 'seahorse/client/plugins/content_length.rb'
@@ -16,2733 +16,2971 @@
require 'aws-sdk-core/plugins/global_configuration.rb'
require 'aws-sdk-core/plugins/regional_endpoint.rb'
require 'aws-sdk-core/plugins/response_paging.rb'
require 'aws-sdk-core/plugins/stub_responses.rb'
require 'aws-sdk-core/plugins/idempotency_token.rb'
+require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
require 'aws-sdk-core/plugins/signature_v4.rb'
require 'aws-sdk-core/plugins/protocols/rest_xml.rb'
Aws::Plugins::GlobalConfiguration.add_identifier(:cloudfront)
-module Aws
- module CloudFront
- class Client < Seahorse::Client::Base
+module Aws::CloudFront
+ class Client < Seahorse::Client::Base
- include Aws::ClientStubs
+ include Aws::ClientStubs
- @identifier = :cloudfront
+ @identifier = :cloudfront
- set_api(ClientApi::API)
+ set_api(ClientApi::API)
- add_plugin(Seahorse::Client::Plugins::ContentLength)
- add_plugin(Aws::Plugins::CredentialsConfiguration)
- add_plugin(Aws::Plugins::Logging)
- add_plugin(Aws::Plugins::ParamConverter)
- add_plugin(Aws::Plugins::ParamValidator)
- add_plugin(Aws::Plugins::UserAgent)
- add_plugin(Aws::Plugins::HelpfulSocketErrors)
- add_plugin(Aws::Plugins::RetryErrors)
- add_plugin(Aws::Plugins::GlobalConfiguration)
- add_plugin(Aws::Plugins::RegionalEndpoint)
- add_plugin(Aws::Plugins::ResponsePaging)
- add_plugin(Aws::Plugins::StubResponses)
- add_plugin(Aws::Plugins::IdempotencyToken)
- add_plugin(Aws::Plugins::SignatureV4)
- add_plugin(Aws::Plugins::Protocols::RestXml)
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
+ add_plugin(Aws::Plugins::Logging)
+ add_plugin(Aws::Plugins::ParamConverter)
+ add_plugin(Aws::Plugins::ParamValidator)
+ add_plugin(Aws::Plugins::UserAgent)
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
+ add_plugin(Aws::Plugins::RetryErrors)
+ add_plugin(Aws::Plugins::GlobalConfiguration)
+ add_plugin(Aws::Plugins::RegionalEndpoint)
+ add_plugin(Aws::Plugins::ResponsePaging)
+ add_plugin(Aws::Plugins::StubResponses)
+ add_plugin(Aws::Plugins::IdempotencyToken)
+ add_plugin(Aws::Plugins::JsonvalueConverter)
+ add_plugin(Aws::Plugins::SignatureV4)
+ add_plugin(Aws::Plugins::Protocols::RestXml)
- # @option options [required, Aws::CredentialProvider] :credentials
- # Your AWS credentials. This can be an instance of any one of the
- # following classes:
- #
- # * `Aws::Credentials` - Used for configuring static, non-refreshing
- # credentials.
- #
- # * `Aws::InstanceProfileCredentials` - Used for loading credentials
- # from an EC2 IMDS on an EC2 instance.
- #
- # * `Aws::SharedCredentials` - Used for loading credentials from a
- # shared file, such as `~/.aws/config`.
- #
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
- #
- # When `:credentials` are not configured directly, the following
- # locations will be searched for credentials:
- #
- # * `Aws.config[:credentials]`
- # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
- # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
- # * `~/.aws/credentials`
- # * `~/.aws/config`
- # * EC2 IMDS instance profile - When used by default, the timeouts are
- # very aggressive. Construct and pass an instance of
- # `Aws::InstanceProfileCredentails` to enable retries and extended
- # timeouts.
- # @option options [required, String] :region
- # The AWS region to connect to. The configured `:region` is
- # used to determine the service `:endpoint`. When not passed,
- # a default `:region` is search for in the following locations:
- #
- # * `Aws.config[:region]`
- # * `ENV['AWS_REGION']`
- # * `ENV['AMAZON_REGION']`
- # * `ENV['AWS_DEFAULT_REGION']`
- # * `~/.aws/credentials`
- # * `~/.aws/config`
- # @option options [String] :access_key_id
- # @option options [Boolean] :convert_params (true)
- # When `true`, an attempt is made to coerce request parameters into
- # the required types.
- # @option options [String] :endpoint
- # The client endpoint is normally constructed from the `:region`
- # option. You should only configure an `:endpoint` when connecting
- # to test endpoints. This should be avalid HTTP(S) URI.
- # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
- # The log formatter.
- # @option options [Symbol] :log_level (:info)
- # The log level to send messages to the `:logger` at.
- # @option options [Logger] :logger
- # The Logger instance to send log messages to. If this option
- # is not set, logging will be disabled.
- # @option options [String] :profile ("default")
- # Used when loading credentials from the shared credentials file
- # at HOME/.aws/credentials. When not specified, 'default' is used.
- # @option options [Integer] :retry_limit (3)
- # The maximum number of times to retry failed requests. Only
- # ~ 500 level server errors and certain ~ 400 level client errors
- # are retried. Generally, these are throttling errors, data
- # checksum errors, networking errors, timeout errors and auth
- # errors from expired credentials.
- # @option options [String] :secret_access_key
- # @option options [String] :session_token
- # @option options [Boolean] :stub_responses (false)
- # Causes the client to return stubbed responses. By default
- # fake responses are generated and returned. You can specify
- # the response data to return or errors to raise by calling
- # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
- #
- # ** Please note ** When response stubbing is enabled, no HTTP
- # requests are made, and retries are disabled.
- # @option options [Boolean] :validate_params (true)
- # When `true`, request parameters are validated before
- # sending the request.
- def initialize(*args)
- super
- end
+ # @option options [required, Aws::CredentialProvider] :credentials
+ # Your AWS credentials. This can be an instance of any one of the
+ # following classes:
+ #
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
+ # credentials.
+ #
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
+ # from an EC2 IMDS on an EC2 instance.
+ #
+ # * `Aws::SharedCredentials` - Used for loading credentials from a
+ # shared file, such as `~/.aws/config`.
+ #
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
+ #
+ # When `:credentials` are not configured directly, the following
+ # locations will be searched for credentials:
+ #
+ # * `Aws.config[:credentials]`
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
+ # * `~/.aws/credentials`
+ # * `~/.aws/config`
+ # * EC2 IMDS instance profile - When used by default, the timeouts are
+ # very aggressive. Construct and pass an instance of
+ # `Aws::InstanceProfileCredentails` to enable retries and extended
+ # timeouts.
+ #
+ # @option options [required, String] :region
+ # The AWS region to connect to. The configured `:region` is
+ # used to determine the service `:endpoint`. When not passed,
+ # a default `:region` is search for in the following locations:
+ #
+ # * `Aws.config[:region]`
+ # * `ENV['AWS_REGION']`
+ # * `ENV['AMAZON_REGION']`
+ # * `ENV['AWS_DEFAULT_REGION']`
+ # * `~/.aws/credentials`
+ # * `~/.aws/config`
+ #
+ # @option options [String] :access_key_id
+ #
+ # @option options [Boolean] :convert_params (true)
+ # When `true`, an attempt is made to coerce request parameters into
+ # the required types.
+ #
+ # @option options [String] :endpoint
+ # The client endpoint is normally constructed from the `:region`
+ # option. You should only configure an `:endpoint` when connecting
+ # to test endpoints. This should be avalid HTTP(S) URI.
+ #
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
+ # The log formatter.
+ #
+ # @option options [Symbol] :log_level (:info)
+ # The log level to send messages to the `:logger` at.
+ #
+ # @option options [Logger] :logger
+ # The Logger instance to send log messages to. If this option
+ # is not set, logging will be disabled.
+ #
+ # @option options [String] :profile ("default")
+ # Used when loading credentials from the shared credentials file
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
+ #
+ # @option options [Integer] :retry_limit (3)
+ # The maximum number of times to retry failed requests. Only
+ # ~ 500 level server errors and certain ~ 400 level client errors
+ # are retried. Generally, these are throttling errors, data
+ # checksum errors, networking errors, timeout errors and auth
+ # errors from expired credentials.
+ #
+ # @option options [String] :secret_access_key
+ #
+ # @option options [String] :session_token
+ #
+ # @option options [Boolean] :stub_responses (false)
+ # Causes the client to return stubbed responses. By default
+ # fake responses are generated and returned. You can specify
+ # the response data to return or errors to raise by calling
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
+ #
+ # ** Please note ** When response stubbing is enabled, no HTTP
+ # requests are made, and retries are disabled.
+ #
+ # @option options [Boolean] :validate_params (true)
+ # When `true`, request parameters are validated before
+ # sending the request.
+ #
+ def initialize(*args)
+ super
+ end
- # @!group API Operations
+ # @!group API Operations
- # 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][1] in the *Amazon
- # CloudFront Developer Guide*.
- #
- #
- #
- # [1]: http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html
- # @option params [required, Types::CloudFrontOriginAccessIdentityConfig] :cloud_front_origin_access_identity_config
- # The current configuration information for the identity.
- # @return [Types::CreateCloudFrontOriginAccessIdentityResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::CreateCloudFrontOriginAccessIdentityResult#cloud_front_origin_access_identity #CloudFrontOriginAccessIdentity} => Types::CloudFrontOriginAccessIdentity
- # * {Types::CreateCloudFrontOriginAccessIdentityResult#location #Location} => String
- # * {Types::CreateCloudFrontOriginAccessIdentityResult#etag #ETag} => String
- #
- # @example Request syntax with placeholder values
- # resp = client.create_cloud_front_origin_access_identity({
- # cloud_front_origin_access_identity_config: { # required
- # caller_reference: "string", # required
- # comment: "string", # required
- # },
- # })
- #
- # @example Response structure
- # resp.cloud_front_origin_access_identity.id #=> String
- # resp.cloud_front_origin_access_identity.s3_canonical_user_id #=> String
- # resp.cloud_front_origin_access_identity.cloud_front_origin_access_identity_config.caller_reference #=> String
- # resp.cloud_front_origin_access_identity.cloud_front_origin_access_identity_config.comment #=> String
- # resp.location #=> String
- # resp.etag #=> String
- # @overload create_cloud_front_origin_access_identity(params = {})
- # @param [Hash] params ({})
- def create_cloud_front_origin_access_identity(params = {}, options = {})
- req = build_request(:create_cloud_front_origin_access_identity, params)
- req.send_request(options)
- end
+ # 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][1] in the *Amazon
+ # CloudFront Developer Guide*.
+ #
+ #
+ #
+ # [1]: http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html
+ #
+ # @option params [required, Types::CloudFrontOriginAccessIdentityConfig] :cloud_front_origin_access_identity_config
+ # The current configuration information for the identity.
+ #
+ # @return [Types::CreateCloudFrontOriginAccessIdentityResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::CreateCloudFrontOriginAccessIdentityResult#cloud_front_origin_access_identity #cloud_front_origin_access_identity} => Types::CloudFrontOriginAccessIdentity
+ # * {Types::CreateCloudFrontOriginAccessIdentityResult#location #location} => String
+ # * {Types::CreateCloudFrontOriginAccessIdentityResult#etag #etag} => String
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.create_cloud_front_origin_access_identity({
+ # cloud_front_origin_access_identity_config: { # required
+ # caller_reference: "string", # required
+ # comment: "string", # required
+ # },
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.cloud_front_origin_access_identity.id #=> String
+ # resp.cloud_front_origin_access_identity.s3_canonical_user_id #=> String
+ # resp.cloud_front_origin_access_identity.cloud_front_origin_access_identity_config.caller_reference #=> String
+ # resp.cloud_front_origin_access_identity.cloud_front_origin_access_identity_config.comment #=> String
+ # resp.location #=> String
+ # resp.etag #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateCloudFrontOriginAccessIdentity2017_03_25 AWS API Documentation
+ #
+ # @overload create_cloud_front_origin_access_identity(params = {})
+ # @param [Hash] params ({})
+ def create_cloud_front_origin_access_identity(params = {}, options = {})
+ req = build_request(:create_cloud_front_origin_access_identity, params)
+ req.send_request(options)
+ end
- # Creates a new web distribution. Send a `GET` request to the
- # `/CloudFront API version/distribution`/`distribution ID` resource.
- # @option params [required, Types::DistributionConfig] :distribution_config
- # The distribution's configuration information.
- # @return [Types::CreateDistributionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::CreateDistributionResult#distribution #Distribution} => Types::Distribution
- # * {Types::CreateDistributionResult#location #Location} => String
- # * {Types::CreateDistributionResult#etag #ETag} => String
- #
- # @example Request syntax with placeholder values
- # resp = client.create_distribution({
- # distribution_config: { # required
- # caller_reference: "string", # required
- # aliases: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # default_root_object: "string",
- # origins: { # required
- # quantity: 1, # required
- # items: [
- # {
- # id: "string", # required
- # domain_name: "string", # required
- # origin_path: "string",
- # custom_headers: {
- # quantity: 1, # required
- # items: [
- # {
- # header_name: "string", # required
- # header_value: "string", # required
- # },
- # ],
- # },
- # s3_origin_config: {
- # origin_access_identity: "string", # required
- # },
- # custom_origin_config: {
- # http_port: 1, # required
- # https_port: 1, # required
- # origin_protocol_policy: "http-only", # required, accepts http-only, match-viewer, https-only
- # origin_ssl_protocols: {
- # quantity: 1, # required
- # items: ["SSLv3"], # required, accepts SSLv3, TLSv1, TLSv1.1, TLSv1.2
- # },
- # },
- # },
- # ],
- # },
- # default_cache_behavior: { # required
- # target_origin_id: "string", # required
- # forwarded_values: { # required
- # query_string: false, # required
- # cookies: { # required
- # forward: "none", # required, accepts none, whitelist, all
- # whitelisted_names: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # },
- # headers: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # query_string_cache_keys: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # },
- # trusted_signers: { # required
- # enabled: false, # required
- # quantity: 1, # required
- # items: ["string"],
- # },
- # viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https
- # min_ttl: 1, # required
- # allowed_methods: {
- # quantity: 1, # required
- # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
- # cached_methods: {
- # quantity: 1, # required
- # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
- # },
- # },
- # smooth_streaming: false,
- # default_ttl: 1,
- # max_ttl: 1,
- # compress: false,
- # lambda_function_associations: {
- # quantity: 1, # required
- # items: [
- # {
- # lambda_function_arn: "string",
- # event_type: "viewer-request", # accepts viewer-request, viewer-response, origin-request, origin-response
- # },
- # ],
- # },
- # },
- # cache_behaviors: {
- # quantity: 1, # required
- # items: [
- # {
- # path_pattern: "string", # required
- # target_origin_id: "string", # required
- # forwarded_values: { # required
- # query_string: false, # required
- # cookies: { # required
- # forward: "none", # required, accepts none, whitelist, all
- # whitelisted_names: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # },
- # headers: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # query_string_cache_keys: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # },
- # trusted_signers: { # required
- # enabled: false, # required
- # quantity: 1, # required
- # items: ["string"],
- # },
- # viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https
- # min_ttl: 1, # required
- # allowed_methods: {
- # quantity: 1, # required
- # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
- # cached_methods: {
- # quantity: 1, # required
- # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
- # },
- # },
- # smooth_streaming: false,
- # default_ttl: 1,
- # max_ttl: 1,
- # compress: false,
- # lambda_function_associations: {
- # quantity: 1, # required
- # items: [
- # {
- # lambda_function_arn: "string",
- # event_type: "viewer-request", # accepts viewer-request, viewer-response, origin-request, origin-response
- # },
- # ],
- # },
- # },
- # ],
- # },
- # custom_error_responses: {
- # quantity: 1, # required
- # items: [
- # {
- # error_code: 1, # required
- # response_page_path: "string",
- # response_code: "string",
- # error_caching_min_ttl: 1,
- # },
- # ],
- # },
- # comment: "string", # required
- # logging: {
- # enabled: false, # required
- # include_cookies: false, # required
- # bucket: "string", # required
- # prefix: "string", # required
- # },
- # price_class: "PriceClass_100", # accepts PriceClass_100, PriceClass_200, PriceClass_All
- # enabled: false, # required
- # viewer_certificate: {
- # cloud_front_default_certificate: false,
- # iam_certificate_id: "string",
- # acm_certificate_arn: "string",
- # ssl_support_method: "sni-only", # accepts sni-only, vip
- # minimum_protocol_version: "SSLv3", # accepts SSLv3, TLSv1
- # certificate: "string",
- # certificate_source: "cloudfront", # accepts cloudfront, iam, acm
- # },
- # restrictions: {
- # geo_restriction: { # required
- # restriction_type: "blacklist", # required, accepts blacklist, whitelist, none
- # quantity: 1, # required
- # items: ["string"],
- # },
- # },
- # web_acl_id: "string",
- # http_version: "http1.1", # accepts http1.1, http2
- # is_ipv6_enabled: false,
- # },
- # })
- #
- # @example Response structure
- # resp.distribution.id #=> String
- # resp.distribution.arn #=> String
- # resp.distribution.status #=> String
- # resp.distribution.last_modified_time #=> Time
- # resp.distribution.in_progress_invalidation_batches #=> Integer
- # resp.distribution.domain_name #=> String
- # resp.distribution.active_trusted_signers.enabled #=> Boolean
- # resp.distribution.active_trusted_signers.quantity #=> Integer
- # resp.distribution.active_trusted_signers.items #=> Array
- # resp.distribution.active_trusted_signers.items[0].aws_account_number #=> String
- # resp.distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
- # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
- # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
- # resp.distribution.distribution_config.caller_reference #=> String
- # resp.distribution.distribution_config.aliases.quantity #=> Integer
- # resp.distribution.distribution_config.aliases.items #=> Array
- # resp.distribution.distribution_config.aliases.items[0] #=> String
- # resp.distribution.distribution_config.default_root_object #=> String
- # resp.distribution.distribution_config.origins.quantity #=> Integer
- # resp.distribution.distribution_config.origins.items #=> Array
- # resp.distribution.distribution_config.origins.items[0].id #=> String
- # resp.distribution.distribution_config.origins.items[0].domain_name #=> String
- # resp.distribution.distribution_config.origins.items[0].origin_path #=> String
- # resp.distribution.distribution_config.origins.items[0].custom_headers.quantity #=> Integer
- # resp.distribution.distribution_config.origins.items[0].custom_headers.items #=> Array
- # resp.distribution.distribution_config.origins.items[0].custom_headers.items[0].header_name #=> String
- # resp.distribution.distribution_config.origins.items[0].custom_headers.items[0].header_value #=> String
- # resp.distribution.distribution_config.origins.items[0].s3_origin_config.origin_access_identity #=> String
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.http_port #=> Integer
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.https_port #=> Integer
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_protocol_policy #=> String, one of "http-only", "match-viewer", "https-only"
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.quantity #=> Integer
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items #=> Array
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items[0] #=> String, one of "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2"
- # resp.distribution.distribution_config.default_cache_behavior.target_origin_id #=> String
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string #=> Boolean
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items[0] #=> String
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.items[0] #=> String
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items[0] #=> String
- # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.enabled #=> Boolean
- # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String
- # resp.distribution.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
- # resp.distribution.distribution_config.default_cache_behavior.min_ttl #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution.distribution_config.default_cache_behavior.smooth_streaming #=> Boolean
- # resp.distribution.distribution_config.default_cache_behavior.default_ttl #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.max_ttl #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.compress #=> Boolean
- # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].lambda_function_arn #=> String
- # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
- # resp.distribution.distribution_config.cache_behaviors.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].path_pattern #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].target_origin_id #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items[0] #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items[0] #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items[0] #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.enabled #=> Boolean
- # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
- # resp.distribution.distribution_config.cache_behaviors.items[0].min_ttl #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution.distribution_config.cache_behaviors.items[0].smooth_streaming #=> Boolean
- # resp.distribution.distribution_config.cache_behaviors.items[0].default_ttl #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].max_ttl #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].compress #=> Boolean
- # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].lambda_function_arn #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
- # resp.distribution.distribution_config.custom_error_responses.quantity #=> Integer
- # resp.distribution.distribution_config.custom_error_responses.items #=> Array
- # resp.distribution.distribution_config.custom_error_responses.items[0].error_code #=> Integer
- # resp.distribution.distribution_config.custom_error_responses.items[0].response_page_path #=> String
- # resp.distribution.distribution_config.custom_error_responses.items[0].response_code #=> String
- # resp.distribution.distribution_config.custom_error_responses.items[0].error_caching_min_ttl #=> Integer
- # resp.distribution.distribution_config.comment #=> String
- # resp.distribution.distribution_config.logging.enabled #=> Boolean
- # resp.distribution.distribution_config.logging.include_cookies #=> Boolean
- # resp.distribution.distribution_config.logging.bucket #=> String
- # resp.distribution.distribution_config.logging.prefix #=> String
- # resp.distribution.distribution_config.price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
- # resp.distribution.distribution_config.enabled #=> Boolean
- # resp.distribution.distribution_config.viewer_certificate.cloud_front_default_certificate #=> Boolean
- # resp.distribution.distribution_config.viewer_certificate.iam_certificate_id #=> String
- # resp.distribution.distribution_config.viewer_certificate.acm_certificate_arn #=> String
- # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip"
- # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1"
- # resp.distribution.distribution_config.viewer_certificate.certificate #=> String
- # resp.distribution.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
- # resp.distribution.distribution_config.restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
- # resp.distribution.distribution_config.restrictions.geo_restriction.quantity #=> Integer
- # resp.distribution.distribution_config.restrictions.geo_restriction.items #=> Array
- # resp.distribution.distribution_config.restrictions.geo_restriction.items[0] #=> String
- # resp.distribution.distribution_config.web_acl_id #=> String
- # resp.distribution.distribution_config.http_version #=> String, one of "http1.1", "http2"
- # resp.distribution.distribution_config.is_ipv6_enabled #=> Boolean
- # resp.location #=> String
- # resp.etag #=> String
- # @overload create_distribution(params = {})
- # @param [Hash] params ({})
- def create_distribution(params = {}, options = {})
- req = build_request(:create_distribution, params)
- req.send_request(options)
- end
+ # Creates a new web distribution. Send a `POST` request to the
+ # `/CloudFront API version/distribution`/`distribution ID` resource.
+ #
+ # @option params [required, Types::DistributionConfig] :distribution_config
+ # The distribution's configuration information.
+ #
+ # @return [Types::CreateDistributionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::CreateDistributionResult#distribution #distribution} => Types::Distribution
+ # * {Types::CreateDistributionResult#location #location} => String
+ # * {Types::CreateDistributionResult#etag #etag} => String
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.create_distribution({
+ # distribution_config: { # required
+ # caller_reference: "string", # required
+ # aliases: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # default_root_object: "string",
+ # origins: { # required
+ # quantity: 1, # required
+ # items: [
+ # {
+ # id: "string", # required
+ # domain_name: "string", # required
+ # origin_path: "string",
+ # custom_headers: {
+ # quantity: 1, # required
+ # items: [
+ # {
+ # header_name: "string", # required
+ # header_value: "string", # required
+ # },
+ # ],
+ # },
+ # s3_origin_config: {
+ # origin_access_identity: "string", # required
+ # },
+ # custom_origin_config: {
+ # http_port: 1, # required
+ # https_port: 1, # required
+ # origin_protocol_policy: "http-only", # required, accepts http-only, match-viewer, https-only
+ # origin_ssl_protocols: {
+ # quantity: 1, # required
+ # items: ["SSLv3"], # required, accepts SSLv3, TLSv1, TLSv1.1, TLSv1.2
+ # },
+ # origin_read_timeout: 1,
+ # origin_keepalive_timeout: 1,
+ # },
+ # },
+ # ],
+ # },
+ # default_cache_behavior: { # required
+ # target_origin_id: "string", # required
+ # forwarded_values: { # required
+ # query_string: false, # required
+ # cookies: { # required
+ # forward: "none", # required, accepts none, whitelist, all
+ # whitelisted_names: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # },
+ # headers: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # query_string_cache_keys: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # },
+ # trusted_signers: { # required
+ # enabled: false, # required
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https
+ # min_ttl: 1, # required
+ # allowed_methods: {
+ # quantity: 1, # required
+ # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
+ # cached_methods: {
+ # quantity: 1, # required
+ # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
+ # },
+ # },
+ # smooth_streaming: false,
+ # default_ttl: 1,
+ # max_ttl: 1,
+ # compress: false,
+ # lambda_function_associations: {
+ # quantity: 1, # required
+ # items: [
+ # {
+ # lambda_function_arn: "string",
+ # event_type: "viewer-request", # accepts viewer-request, viewer-response, origin-request, origin-response
+ # },
+ # ],
+ # },
+ # },
+ # cache_behaviors: {
+ # quantity: 1, # required
+ # items: [
+ # {
+ # path_pattern: "string", # required
+ # target_origin_id: "string", # required
+ # forwarded_values: { # required
+ # query_string: false, # required
+ # cookies: { # required
+ # forward: "none", # required, accepts none, whitelist, all
+ # whitelisted_names: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # },
+ # headers: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # query_string_cache_keys: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # },
+ # trusted_signers: { # required
+ # enabled: false, # required
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https
+ # min_ttl: 1, # required
+ # allowed_methods: {
+ # quantity: 1, # required
+ # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
+ # cached_methods: {
+ # quantity: 1, # required
+ # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
+ # },
+ # },
+ # smooth_streaming: false,
+ # default_ttl: 1,
+ # max_ttl: 1,
+ # compress: false,
+ # lambda_function_associations: {
+ # quantity: 1, # required
+ # items: [
+ # {
+ # lambda_function_arn: "string",
+ # event_type: "viewer-request", # accepts viewer-request, viewer-response, origin-request, origin-response
+ # },
+ # ],
+ # },
+ # },
+ # ],
+ # },
+ # custom_error_responses: {
+ # quantity: 1, # required
+ # items: [
+ # {
+ # error_code: 1, # required
+ # response_page_path: "string",
+ # response_code: "string",
+ # error_caching_min_ttl: 1,
+ # },
+ # ],
+ # },
+ # comment: "string", # required
+ # logging: {
+ # enabled: false, # required
+ # include_cookies: false, # required
+ # bucket: "string", # required
+ # prefix: "string", # required
+ # },
+ # price_class: "PriceClass_100", # accepts PriceClass_100, PriceClass_200, PriceClass_All
+ # enabled: false, # required
+ # viewer_certificate: {
+ # cloud_front_default_certificate: false,
+ # iam_certificate_id: "string",
+ # acm_certificate_arn: "string",
+ # ssl_support_method: "sni-only", # accepts sni-only, vip
+ # minimum_protocol_version: "SSLv3", # accepts SSLv3, TLSv1
+ # certificate: "string",
+ # certificate_source: "cloudfront", # accepts cloudfront, iam, acm
+ # },
+ # restrictions: {
+ # geo_restriction: { # required
+ # restriction_type: "blacklist", # required, accepts blacklist, whitelist, none
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # },
+ # web_acl_id: "string",
+ # http_version: "http1.1", # accepts http1.1, http2
+ # is_ipv6_enabled: false,
+ # },
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.distribution.id #=> String
+ # resp.distribution.arn #=> String
+ # resp.distribution.status #=> String
+ # resp.distribution.last_modified_time #=> Time
+ # resp.distribution.in_progress_invalidation_batches #=> Integer
+ # resp.distribution.domain_name #=> String
+ # resp.distribution.active_trusted_signers.enabled #=> Boolean
+ # resp.distribution.active_trusted_signers.quantity #=> Integer
+ # resp.distribution.active_trusted_signers.items #=> Array
+ # resp.distribution.active_trusted_signers.items[0].aws_account_number #=> String
+ # resp.distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
+ # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
+ # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
+ # resp.distribution.distribution_config.caller_reference #=> String
+ # resp.distribution.distribution_config.aliases.quantity #=> Integer
+ # resp.distribution.distribution_config.aliases.items #=> Array
+ # resp.distribution.distribution_config.aliases.items[0] #=> String
+ # resp.distribution.distribution_config.default_root_object #=> String
+ # resp.distribution.distribution_config.origins.quantity #=> Integer
+ # resp.distribution.distribution_config.origins.items #=> Array
+ # resp.distribution.distribution_config.origins.items[0].id #=> String
+ # resp.distribution.distribution_config.origins.items[0].domain_name #=> String
+ # resp.distribution.distribution_config.origins.items[0].origin_path #=> String
+ # resp.distribution.distribution_config.origins.items[0].custom_headers.quantity #=> Integer
+ # resp.distribution.distribution_config.origins.items[0].custom_headers.items #=> Array
+ # resp.distribution.distribution_config.origins.items[0].custom_headers.items[0].header_name #=> String
+ # resp.distribution.distribution_config.origins.items[0].custom_headers.items[0].header_value #=> String
+ # resp.distribution.distribution_config.origins.items[0].s3_origin_config.origin_access_identity #=> String
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.http_port #=> Integer
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.https_port #=> Integer
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_protocol_policy #=> String, one of "http-only", "match-viewer", "https-only"
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.quantity #=> Integer
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items #=> Array
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items[0] #=> String, one of "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2"
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_read_timeout #=> Integer
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.target_origin_id #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string #=> Boolean
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items[0] #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.items[0] #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items[0] #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.enabled #=> Boolean
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
+ # resp.distribution.distribution_config.default_cache_behavior.min_ttl #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution.distribution_config.default_cache_behavior.smooth_streaming #=> Boolean
+ # resp.distribution.distribution_config.default_cache_behavior.default_ttl #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.max_ttl #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.compress #=> Boolean
+ # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].lambda_function_arn #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
+ # resp.distribution.distribution_config.cache_behaviors.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].path_pattern #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].target_origin_id #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items[0] #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items[0] #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items[0] #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.enabled #=> Boolean
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
+ # resp.distribution.distribution_config.cache_behaviors.items[0].min_ttl #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution.distribution_config.cache_behaviors.items[0].smooth_streaming #=> Boolean
+ # resp.distribution.distribution_config.cache_behaviors.items[0].default_ttl #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].max_ttl #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].compress #=> Boolean
+ # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].lambda_function_arn #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
+ # resp.distribution.distribution_config.custom_error_responses.quantity #=> Integer
+ # resp.distribution.distribution_config.custom_error_responses.items #=> Array
+ # resp.distribution.distribution_config.custom_error_responses.items[0].error_code #=> Integer
+ # resp.distribution.distribution_config.custom_error_responses.items[0].response_page_path #=> String
+ # resp.distribution.distribution_config.custom_error_responses.items[0].response_code #=> String
+ # resp.distribution.distribution_config.custom_error_responses.items[0].error_caching_min_ttl #=> Integer
+ # resp.distribution.distribution_config.comment #=> String
+ # resp.distribution.distribution_config.logging.enabled #=> Boolean
+ # resp.distribution.distribution_config.logging.include_cookies #=> Boolean
+ # resp.distribution.distribution_config.logging.bucket #=> String
+ # resp.distribution.distribution_config.logging.prefix #=> String
+ # resp.distribution.distribution_config.price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
+ # resp.distribution.distribution_config.enabled #=> Boolean
+ # resp.distribution.distribution_config.viewer_certificate.cloud_front_default_certificate #=> Boolean
+ # resp.distribution.distribution_config.viewer_certificate.iam_certificate_id #=> String
+ # resp.distribution.distribution_config.viewer_certificate.acm_certificate_arn #=> String
+ # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip"
+ # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1"
+ # resp.distribution.distribution_config.viewer_certificate.certificate #=> String
+ # resp.distribution.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
+ # resp.distribution.distribution_config.restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
+ # resp.distribution.distribution_config.restrictions.geo_restriction.quantity #=> Integer
+ # resp.distribution.distribution_config.restrictions.geo_restriction.items #=> Array
+ # resp.distribution.distribution_config.restrictions.geo_restriction.items[0] #=> String
+ # resp.distribution.distribution_config.web_acl_id #=> String
+ # resp.distribution.distribution_config.http_version #=> String, one of "http1.1", "http2"
+ # resp.distribution.distribution_config.is_ipv6_enabled #=> Boolean
+ # resp.location #=> String
+ # resp.etag #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateDistribution2017_03_25 AWS API Documentation
+ #
+ # @overload create_distribution(params = {})
+ # @param [Hash] params ({})
+ def create_distribution(params = {}, options = {})
+ req = build_request(:create_distribution, params)
+ req.send_request(options)
+ end
- # Create a new distribution with tags.
- # @option params [required, Types::DistributionConfigWithTags] :distribution_config_with_tags
- # The distribution's configuration information.
- # @return [Types::CreateDistributionWithTagsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::CreateDistributionWithTagsResult#distribution #Distribution} => Types::Distribution
- # * {Types::CreateDistributionWithTagsResult#location #Location} => String
- # * {Types::CreateDistributionWithTagsResult#etag #ETag} => String
- #
- # @example Request syntax with placeholder values
- # resp = client.create_distribution_with_tags({
- # distribution_config_with_tags: { # required
- # distribution_config: { # required
- # caller_reference: "string", # required
- # aliases: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # default_root_object: "string",
- # origins: { # required
- # quantity: 1, # required
- # items: [
- # {
- # id: "string", # required
- # domain_name: "string", # required
- # origin_path: "string",
- # custom_headers: {
- # quantity: 1, # required
- # items: [
- # {
- # header_name: "string", # required
- # header_value: "string", # required
- # },
- # ],
- # },
- # s3_origin_config: {
- # origin_access_identity: "string", # required
- # },
- # custom_origin_config: {
- # http_port: 1, # required
- # https_port: 1, # required
- # origin_protocol_policy: "http-only", # required, accepts http-only, match-viewer, https-only
- # origin_ssl_protocols: {
- # quantity: 1, # required
- # items: ["SSLv3"], # required, accepts SSLv3, TLSv1, TLSv1.1, TLSv1.2
- # },
- # },
- # },
- # ],
- # },
- # default_cache_behavior: { # required
- # target_origin_id: "string", # required
- # forwarded_values: { # required
- # query_string: false, # required
- # cookies: { # required
- # forward: "none", # required, accepts none, whitelist, all
- # whitelisted_names: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # },
- # headers: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # query_string_cache_keys: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # },
- # trusted_signers: { # required
- # enabled: false, # required
- # quantity: 1, # required
- # items: ["string"],
- # },
- # viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https
- # min_ttl: 1, # required
- # allowed_methods: {
- # quantity: 1, # required
- # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
- # cached_methods: {
- # quantity: 1, # required
- # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
- # },
- # },
- # smooth_streaming: false,
- # default_ttl: 1,
- # max_ttl: 1,
- # compress: false,
- # lambda_function_associations: {
- # quantity: 1, # required
- # items: [
- # {
- # lambda_function_arn: "string",
- # event_type: "viewer-request", # accepts viewer-request, viewer-response, origin-request, origin-response
- # },
- # ],
- # },
- # },
- # cache_behaviors: {
- # quantity: 1, # required
- # items: [
- # {
- # path_pattern: "string", # required
- # target_origin_id: "string", # required
- # forwarded_values: { # required
- # query_string: false, # required
- # cookies: { # required
- # forward: "none", # required, accepts none, whitelist, all
- # whitelisted_names: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # },
- # headers: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # query_string_cache_keys: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # },
- # trusted_signers: { # required
- # enabled: false, # required
- # quantity: 1, # required
- # items: ["string"],
- # },
- # viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https
- # min_ttl: 1, # required
- # allowed_methods: {
- # quantity: 1, # required
- # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
- # cached_methods: {
- # quantity: 1, # required
- # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
- # },
- # },
- # smooth_streaming: false,
- # default_ttl: 1,
- # max_ttl: 1,
- # compress: false,
- # lambda_function_associations: {
- # quantity: 1, # required
- # items: [
- # {
- # lambda_function_arn: "string",
- # event_type: "viewer-request", # accepts viewer-request, viewer-response, origin-request, origin-response
- # },
- # ],
- # },
- # },
- # ],
- # },
- # custom_error_responses: {
- # quantity: 1, # required
- # items: [
- # {
- # error_code: 1, # required
- # response_page_path: "string",
- # response_code: "string",
- # error_caching_min_ttl: 1,
- # },
- # ],
- # },
- # comment: "string", # required
- # logging: {
- # enabled: false, # required
- # include_cookies: false, # required
- # bucket: "string", # required
- # prefix: "string", # required
- # },
- # price_class: "PriceClass_100", # accepts PriceClass_100, PriceClass_200, PriceClass_All
- # enabled: false, # required
- # viewer_certificate: {
- # cloud_front_default_certificate: false,
- # iam_certificate_id: "string",
- # acm_certificate_arn: "string",
- # ssl_support_method: "sni-only", # accepts sni-only, vip
- # minimum_protocol_version: "SSLv3", # accepts SSLv3, TLSv1
- # certificate: "string",
- # certificate_source: "cloudfront", # accepts cloudfront, iam, acm
- # },
- # restrictions: {
- # geo_restriction: { # required
- # restriction_type: "blacklist", # required, accepts blacklist, whitelist, none
- # quantity: 1, # required
- # items: ["string"],
- # },
- # },
- # web_acl_id: "string",
- # http_version: "http1.1", # accepts http1.1, http2
- # is_ipv6_enabled: false,
- # },
- # tags: { # required
- # items: [
- # {
- # key: "TagKey", # required
- # value: "TagValue",
- # },
- # ],
- # },
- # },
- # })
- #
- # @example Response structure
- # resp.distribution.id #=> String
- # resp.distribution.arn #=> String
- # resp.distribution.status #=> String
- # resp.distribution.last_modified_time #=> Time
- # resp.distribution.in_progress_invalidation_batches #=> Integer
- # resp.distribution.domain_name #=> String
- # resp.distribution.active_trusted_signers.enabled #=> Boolean
- # resp.distribution.active_trusted_signers.quantity #=> Integer
- # resp.distribution.active_trusted_signers.items #=> Array
- # resp.distribution.active_trusted_signers.items[0].aws_account_number #=> String
- # resp.distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
- # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
- # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
- # resp.distribution.distribution_config.caller_reference #=> String
- # resp.distribution.distribution_config.aliases.quantity #=> Integer
- # resp.distribution.distribution_config.aliases.items #=> Array
- # resp.distribution.distribution_config.aliases.items[0] #=> String
- # resp.distribution.distribution_config.default_root_object #=> String
- # resp.distribution.distribution_config.origins.quantity #=> Integer
- # resp.distribution.distribution_config.origins.items #=> Array
- # resp.distribution.distribution_config.origins.items[0].id #=> String
- # resp.distribution.distribution_config.origins.items[0].domain_name #=> String
- # resp.distribution.distribution_config.origins.items[0].origin_path #=> String
- # resp.distribution.distribution_config.origins.items[0].custom_headers.quantity #=> Integer
- # resp.distribution.distribution_config.origins.items[0].custom_headers.items #=> Array
- # resp.distribution.distribution_config.origins.items[0].custom_headers.items[0].header_name #=> String
- # resp.distribution.distribution_config.origins.items[0].custom_headers.items[0].header_value #=> String
- # resp.distribution.distribution_config.origins.items[0].s3_origin_config.origin_access_identity #=> String
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.http_port #=> Integer
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.https_port #=> Integer
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_protocol_policy #=> String, one of "http-only", "match-viewer", "https-only"
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.quantity #=> Integer
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items #=> Array
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items[0] #=> String, one of "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2"
- # resp.distribution.distribution_config.default_cache_behavior.target_origin_id #=> String
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string #=> Boolean
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items[0] #=> String
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.items[0] #=> String
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items[0] #=> String
- # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.enabled #=> Boolean
- # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String
- # resp.distribution.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
- # resp.distribution.distribution_config.default_cache_behavior.min_ttl #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution.distribution_config.default_cache_behavior.smooth_streaming #=> Boolean
- # resp.distribution.distribution_config.default_cache_behavior.default_ttl #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.max_ttl #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.compress #=> Boolean
- # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].lambda_function_arn #=> String
- # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
- # resp.distribution.distribution_config.cache_behaviors.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].path_pattern #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].target_origin_id #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items[0] #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items[0] #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items[0] #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.enabled #=> Boolean
- # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
- # resp.distribution.distribution_config.cache_behaviors.items[0].min_ttl #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution.distribution_config.cache_behaviors.items[0].smooth_streaming #=> Boolean
- # resp.distribution.distribution_config.cache_behaviors.items[0].default_ttl #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].max_ttl #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].compress #=> Boolean
- # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].lambda_function_arn #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
- # resp.distribution.distribution_config.custom_error_responses.quantity #=> Integer
- # resp.distribution.distribution_config.custom_error_responses.items #=> Array
- # resp.distribution.distribution_config.custom_error_responses.items[0].error_code #=> Integer
- # resp.distribution.distribution_config.custom_error_responses.items[0].response_page_path #=> String
- # resp.distribution.distribution_config.custom_error_responses.items[0].response_code #=> String
- # resp.distribution.distribution_config.custom_error_responses.items[0].error_caching_min_ttl #=> Integer
- # resp.distribution.distribution_config.comment #=> String
- # resp.distribution.distribution_config.logging.enabled #=> Boolean
- # resp.distribution.distribution_config.logging.include_cookies #=> Boolean
- # resp.distribution.distribution_config.logging.bucket #=> String
- # resp.distribution.distribution_config.logging.prefix #=> String
- # resp.distribution.distribution_config.price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
- # resp.distribution.distribution_config.enabled #=> Boolean
- # resp.distribution.distribution_config.viewer_certificate.cloud_front_default_certificate #=> Boolean
- # resp.distribution.distribution_config.viewer_certificate.iam_certificate_id #=> String
- # resp.distribution.distribution_config.viewer_certificate.acm_certificate_arn #=> String
- # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip"
- # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1"
- # resp.distribution.distribution_config.viewer_certificate.certificate #=> String
- # resp.distribution.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
- # resp.distribution.distribution_config.restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
- # resp.distribution.distribution_config.restrictions.geo_restriction.quantity #=> Integer
- # resp.distribution.distribution_config.restrictions.geo_restriction.items #=> Array
- # resp.distribution.distribution_config.restrictions.geo_restriction.items[0] #=> String
- # resp.distribution.distribution_config.web_acl_id #=> String
- # resp.distribution.distribution_config.http_version #=> String, one of "http1.1", "http2"
- # resp.distribution.distribution_config.is_ipv6_enabled #=> Boolean
- # resp.location #=> String
- # resp.etag #=> String
- # @overload create_distribution_with_tags(params = {})
- # @param [Hash] params ({})
- def create_distribution_with_tags(params = {}, options = {})
- req = build_request(:create_distribution_with_tags, params)
- req.send_request(options)
- end
+ # Create a new distribution with tags.
+ #
+ # @option params [required, Types::DistributionConfigWithTags] :distribution_config_with_tags
+ # The distribution's configuration information.
+ #
+ # @return [Types::CreateDistributionWithTagsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::CreateDistributionWithTagsResult#distribution #distribution} => Types::Distribution
+ # * {Types::CreateDistributionWithTagsResult#location #location} => String
+ # * {Types::CreateDistributionWithTagsResult#etag #etag} => String
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.create_distribution_with_tags({
+ # distribution_config_with_tags: { # required
+ # distribution_config: { # required
+ # caller_reference: "string", # required
+ # aliases: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # default_root_object: "string",
+ # origins: { # required
+ # quantity: 1, # required
+ # items: [
+ # {
+ # id: "string", # required
+ # domain_name: "string", # required
+ # origin_path: "string",
+ # custom_headers: {
+ # quantity: 1, # required
+ # items: [
+ # {
+ # header_name: "string", # required
+ # header_value: "string", # required
+ # },
+ # ],
+ # },
+ # s3_origin_config: {
+ # origin_access_identity: "string", # required
+ # },
+ # custom_origin_config: {
+ # http_port: 1, # required
+ # https_port: 1, # required
+ # origin_protocol_policy: "http-only", # required, accepts http-only, match-viewer, https-only
+ # origin_ssl_protocols: {
+ # quantity: 1, # required
+ # items: ["SSLv3"], # required, accepts SSLv3, TLSv1, TLSv1.1, TLSv1.2
+ # },
+ # origin_read_timeout: 1,
+ # origin_keepalive_timeout: 1,
+ # },
+ # },
+ # ],
+ # },
+ # default_cache_behavior: { # required
+ # target_origin_id: "string", # required
+ # forwarded_values: { # required
+ # query_string: false, # required
+ # cookies: { # required
+ # forward: "none", # required, accepts none, whitelist, all
+ # whitelisted_names: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # },
+ # headers: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # query_string_cache_keys: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # },
+ # trusted_signers: { # required
+ # enabled: false, # required
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https
+ # min_ttl: 1, # required
+ # allowed_methods: {
+ # quantity: 1, # required
+ # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
+ # cached_methods: {
+ # quantity: 1, # required
+ # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
+ # },
+ # },
+ # smooth_streaming: false,
+ # default_ttl: 1,
+ # max_ttl: 1,
+ # compress: false,
+ # lambda_function_associations: {
+ # quantity: 1, # required
+ # items: [
+ # {
+ # lambda_function_arn: "string",
+ # event_type: "viewer-request", # accepts viewer-request, viewer-response, origin-request, origin-response
+ # },
+ # ],
+ # },
+ # },
+ # cache_behaviors: {
+ # quantity: 1, # required
+ # items: [
+ # {
+ # path_pattern: "string", # required
+ # target_origin_id: "string", # required
+ # forwarded_values: { # required
+ # query_string: false, # required
+ # cookies: { # required
+ # forward: "none", # required, accepts none, whitelist, all
+ # whitelisted_names: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # },
+ # headers: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # query_string_cache_keys: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # },
+ # trusted_signers: { # required
+ # enabled: false, # required
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https
+ # min_ttl: 1, # required
+ # allowed_methods: {
+ # quantity: 1, # required
+ # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
+ # cached_methods: {
+ # quantity: 1, # required
+ # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
+ # },
+ # },
+ # smooth_streaming: false,
+ # default_ttl: 1,
+ # max_ttl: 1,
+ # compress: false,
+ # lambda_function_associations: {
+ # quantity: 1, # required
+ # items: [
+ # {
+ # lambda_function_arn: "string",
+ # event_type: "viewer-request", # accepts viewer-request, viewer-response, origin-request, origin-response
+ # },
+ # ],
+ # },
+ # },
+ # ],
+ # },
+ # custom_error_responses: {
+ # quantity: 1, # required
+ # items: [
+ # {
+ # error_code: 1, # required
+ # response_page_path: "string",
+ # response_code: "string",
+ # error_caching_min_ttl: 1,
+ # },
+ # ],
+ # },
+ # comment: "string", # required
+ # logging: {
+ # enabled: false, # required
+ # include_cookies: false, # required
+ # bucket: "string", # required
+ # prefix: "string", # required
+ # },
+ # price_class: "PriceClass_100", # accepts PriceClass_100, PriceClass_200, PriceClass_All
+ # enabled: false, # required
+ # viewer_certificate: {
+ # cloud_front_default_certificate: false,
+ # iam_certificate_id: "string",
+ # acm_certificate_arn: "string",
+ # ssl_support_method: "sni-only", # accepts sni-only, vip
+ # minimum_protocol_version: "SSLv3", # accepts SSLv3, TLSv1
+ # certificate: "string",
+ # certificate_source: "cloudfront", # accepts cloudfront, iam, acm
+ # },
+ # restrictions: {
+ # geo_restriction: { # required
+ # restriction_type: "blacklist", # required, accepts blacklist, whitelist, none
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # },
+ # web_acl_id: "string",
+ # http_version: "http1.1", # accepts http1.1, http2
+ # is_ipv6_enabled: false,
+ # },
+ # tags: { # required
+ # items: [
+ # {
+ # key: "TagKey", # required
+ # value: "TagValue",
+ # },
+ # ],
+ # },
+ # },
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.distribution.id #=> String
+ # resp.distribution.arn #=> String
+ # resp.distribution.status #=> String
+ # resp.distribution.last_modified_time #=> Time
+ # resp.distribution.in_progress_invalidation_batches #=> Integer
+ # resp.distribution.domain_name #=> String
+ # resp.distribution.active_trusted_signers.enabled #=> Boolean
+ # resp.distribution.active_trusted_signers.quantity #=> Integer
+ # resp.distribution.active_trusted_signers.items #=> Array
+ # resp.distribution.active_trusted_signers.items[0].aws_account_number #=> String
+ # resp.distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
+ # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
+ # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
+ # resp.distribution.distribution_config.caller_reference #=> String
+ # resp.distribution.distribution_config.aliases.quantity #=> Integer
+ # resp.distribution.distribution_config.aliases.items #=> Array
+ # resp.distribution.distribution_config.aliases.items[0] #=> String
+ # resp.distribution.distribution_config.default_root_object #=> String
+ # resp.distribution.distribution_config.origins.quantity #=> Integer
+ # resp.distribution.distribution_config.origins.items #=> Array
+ # resp.distribution.distribution_config.origins.items[0].id #=> String
+ # resp.distribution.distribution_config.origins.items[0].domain_name #=> String
+ # resp.distribution.distribution_config.origins.items[0].origin_path #=> String
+ # resp.distribution.distribution_config.origins.items[0].custom_headers.quantity #=> Integer
+ # resp.distribution.distribution_config.origins.items[0].custom_headers.items #=> Array
+ # resp.distribution.distribution_config.origins.items[0].custom_headers.items[0].header_name #=> String
+ # resp.distribution.distribution_config.origins.items[0].custom_headers.items[0].header_value #=> String
+ # resp.distribution.distribution_config.origins.items[0].s3_origin_config.origin_access_identity #=> String
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.http_port #=> Integer
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.https_port #=> Integer
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_protocol_policy #=> String, one of "http-only", "match-viewer", "https-only"
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.quantity #=> Integer
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items #=> Array
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items[0] #=> String, one of "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2"
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_read_timeout #=> Integer
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.target_origin_id #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string #=> Boolean
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items[0] #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.items[0] #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items[0] #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.enabled #=> Boolean
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
+ # resp.distribution.distribution_config.default_cache_behavior.min_ttl #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution.distribution_config.default_cache_behavior.smooth_streaming #=> Boolean
+ # resp.distribution.distribution_config.default_cache_behavior.default_ttl #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.max_ttl #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.compress #=> Boolean
+ # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].lambda_function_arn #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
+ # resp.distribution.distribution_config.cache_behaviors.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].path_pattern #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].target_origin_id #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items[0] #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items[0] #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items[0] #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.enabled #=> Boolean
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
+ # resp.distribution.distribution_config.cache_behaviors.items[0].min_ttl #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution.distribution_config.cache_behaviors.items[0].smooth_streaming #=> Boolean
+ # resp.distribution.distribution_config.cache_behaviors.items[0].default_ttl #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].max_ttl #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].compress #=> Boolean
+ # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].lambda_function_arn #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
+ # resp.distribution.distribution_config.custom_error_responses.quantity #=> Integer
+ # resp.distribution.distribution_config.custom_error_responses.items #=> Array
+ # resp.distribution.distribution_config.custom_error_responses.items[0].error_code #=> Integer
+ # resp.distribution.distribution_config.custom_error_responses.items[0].response_page_path #=> String
+ # resp.distribution.distribution_config.custom_error_responses.items[0].response_code #=> String
+ # resp.distribution.distribution_config.custom_error_responses.items[0].error_caching_min_ttl #=> Integer
+ # resp.distribution.distribution_config.comment #=> String
+ # resp.distribution.distribution_config.logging.enabled #=> Boolean
+ # resp.distribution.distribution_config.logging.include_cookies #=> Boolean
+ # resp.distribution.distribution_config.logging.bucket #=> String
+ # resp.distribution.distribution_config.logging.prefix #=> String
+ # resp.distribution.distribution_config.price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
+ # resp.distribution.distribution_config.enabled #=> Boolean
+ # resp.distribution.distribution_config.viewer_certificate.cloud_front_default_certificate #=> Boolean
+ # resp.distribution.distribution_config.viewer_certificate.iam_certificate_id #=> String
+ # resp.distribution.distribution_config.viewer_certificate.acm_certificate_arn #=> String
+ # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip"
+ # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1"
+ # resp.distribution.distribution_config.viewer_certificate.certificate #=> String
+ # resp.distribution.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
+ # resp.distribution.distribution_config.restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
+ # resp.distribution.distribution_config.restrictions.geo_restriction.quantity #=> Integer
+ # resp.distribution.distribution_config.restrictions.geo_restriction.items #=> Array
+ # resp.distribution.distribution_config.restrictions.geo_restriction.items[0] #=> String
+ # resp.distribution.distribution_config.web_acl_id #=> String
+ # resp.distribution.distribution_config.http_version #=> String, one of "http1.1", "http2"
+ # resp.distribution.distribution_config.is_ipv6_enabled #=> Boolean
+ # resp.location #=> String
+ # resp.etag #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateDistributionWithTags2017_03_25 AWS API Documentation
+ #
+ # @overload create_distribution_with_tags(params = {})
+ # @param [Hash] params ({})
+ def create_distribution_with_tags(params = {}, options = {})
+ req = build_request(:create_distribution_with_tags, params)
+ req.send_request(options)
+ end
- # Create a new invalidation.
- # @option params [required, String] :distribution_id
- # The distribution's id.
- # @option params [required, Types::InvalidationBatch] :invalidation_batch
- # The batch information for the invalidation.
- # @return [Types::CreateInvalidationResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::CreateInvalidationResult#location #Location} => String
- # * {Types::CreateInvalidationResult#invalidation #Invalidation} => Types::Invalidation
- #
- # @example Request syntax with placeholder values
- # resp = client.create_invalidation({
- # distribution_id: "string", # required
- # invalidation_batch: { # required
- # paths: { # required
- # quantity: 1, # required
- # items: ["string"],
- # },
- # caller_reference: "string", # required
- # },
- # })
- #
- # @example Response structure
- # resp.location #=> String
- # resp.invalidation.id #=> String
- # resp.invalidation.status #=> String
- # resp.invalidation.create_time #=> Time
- # resp.invalidation.invalidation_batch.paths.quantity #=> Integer
- # resp.invalidation.invalidation_batch.paths.items #=> Array
- # resp.invalidation.invalidation_batch.paths.items[0] #=> String
- # resp.invalidation.invalidation_batch.caller_reference #=> String
- # @overload create_invalidation(params = {})
- # @param [Hash] params ({})
- def create_invalidation(params = {}, options = {})
- req = build_request(:create_invalidation, params)
- req.send_request(options)
- end
+ # Create a new invalidation.
+ #
+ # @option params [required, String] :distribution_id
+ # The distribution's id.
+ #
+ # @option params [required, Types::InvalidationBatch] :invalidation_batch
+ # The batch information for the invalidation.
+ #
+ # @return [Types::CreateInvalidationResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::CreateInvalidationResult#location #location} => String
+ # * {Types::CreateInvalidationResult#invalidation #invalidation} => Types::Invalidation
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.create_invalidation({
+ # distribution_id: "string", # required
+ # invalidation_batch: { # required
+ # paths: { # required
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # caller_reference: "string", # required
+ # },
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.location #=> String
+ # resp.invalidation.id #=> String
+ # resp.invalidation.status #=> String
+ # resp.invalidation.create_time #=> Time
+ # resp.invalidation.invalidation_batch.paths.quantity #=> Integer
+ # resp.invalidation.invalidation_batch.paths.items #=> Array
+ # resp.invalidation.invalidation_batch.paths.items[0] #=> String
+ # resp.invalidation.invalidation_batch.caller_reference #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateInvalidation2017_03_25 AWS API Documentation
+ #
+ # @overload create_invalidation(params = {})
+ # @param [Hash] params ({})
+ def create_invalidation(params = {}, options = {})
+ req = build_request(:create_invalidation, params)
+ req.send_request(options)
+ end
- # 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][1] 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.
- #
- #
- #
- # [1]: http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-rtmp.html
- # @option params [required, Types::StreamingDistributionConfig] :streaming_distribution_config
- # The streaming distribution's configuration information.
- # @return [Types::CreateStreamingDistributionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::CreateStreamingDistributionResult#streaming_distribution #StreamingDistribution} => Types::StreamingDistribution
- # * {Types::CreateStreamingDistributionResult#location #Location} => String
- # * {Types::CreateStreamingDistributionResult#etag #ETag} => String
- #
- # @example Request syntax with placeholder values
- # resp = client.create_streaming_distribution({
- # streaming_distribution_config: { # required
- # caller_reference: "string", # required
- # s3_origin: { # required
- # domain_name: "string", # required
- # origin_access_identity: "string", # required
- # },
- # aliases: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # comment: "string", # required
- # logging: {
- # enabled: false, # required
- # bucket: "string", # required
- # prefix: "string", # required
- # },
- # trusted_signers: { # required
- # enabled: false, # required
- # quantity: 1, # required
- # items: ["string"],
- # },
- # price_class: "PriceClass_100", # accepts PriceClass_100, PriceClass_200, PriceClass_All
- # enabled: false, # required
- # },
- # })
- #
- # @example Response structure
- # resp.streaming_distribution.id #=> String
- # resp.streaming_distribution.arn #=> String
- # resp.streaming_distribution.status #=> String
- # resp.streaming_distribution.last_modified_time #=> Time
- # resp.streaming_distribution.domain_name #=> String
- # resp.streaming_distribution.active_trusted_signers.enabled #=> Boolean
- # resp.streaming_distribution.active_trusted_signers.quantity #=> Integer
- # resp.streaming_distribution.active_trusted_signers.items #=> Array
- # resp.streaming_distribution.active_trusted_signers.items[0].aws_account_number #=> String
- # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
- # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
- # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
- # resp.streaming_distribution.streaming_distribution_config.caller_reference #=> String
- # resp.streaming_distribution.streaming_distribution_config.s3_origin.domain_name #=> String
- # resp.streaming_distribution.streaming_distribution_config.s3_origin.origin_access_identity #=> String
- # resp.streaming_distribution.streaming_distribution_config.aliases.quantity #=> Integer
- # resp.streaming_distribution.streaming_distribution_config.aliases.items #=> Array
- # resp.streaming_distribution.streaming_distribution_config.aliases.items[0] #=> String
- # resp.streaming_distribution.streaming_distribution_config.comment #=> String
- # resp.streaming_distribution.streaming_distribution_config.logging.enabled #=> Boolean
- # resp.streaming_distribution.streaming_distribution_config.logging.bucket #=> String
- # resp.streaming_distribution.streaming_distribution_config.logging.prefix #=> String
- # resp.streaming_distribution.streaming_distribution_config.trusted_signers.enabled #=> Boolean
- # resp.streaming_distribution.streaming_distribution_config.trusted_signers.quantity #=> Integer
- # resp.streaming_distribution.streaming_distribution_config.trusted_signers.items #=> Array
- # resp.streaming_distribution.streaming_distribution_config.trusted_signers.items[0] #=> String
- # resp.streaming_distribution.streaming_distribution_config.price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
- # resp.streaming_distribution.streaming_distribution_config.enabled #=> Boolean
- # resp.location #=> String
- # resp.etag #=> String
- # @overload create_streaming_distribution(params = {})
- # @param [Hash] params ({})
- def create_streaming_distribution(params = {}, options = {})
- req = build_request(:create_streaming_distribution, params)
- req.send_request(options)
- end
+ # 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][1] 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.
+ #
+ #
+ #
+ # [1]: http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-rtmp.html
+ #
+ # @option params [required, Types::StreamingDistributionConfig] :streaming_distribution_config
+ # The streaming distribution's configuration information.
+ #
+ # @return [Types::CreateStreamingDistributionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::CreateStreamingDistributionResult#streaming_distribution #streaming_distribution} => Types::StreamingDistribution
+ # * {Types::CreateStreamingDistributionResult#location #location} => String
+ # * {Types::CreateStreamingDistributionResult#etag #etag} => String
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.create_streaming_distribution({
+ # streaming_distribution_config: { # required
+ # caller_reference: "string", # required
+ # s3_origin: { # required
+ # domain_name: "string", # required
+ # origin_access_identity: "string", # required
+ # },
+ # aliases: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # comment: "string", # required
+ # logging: {
+ # enabled: false, # required
+ # bucket: "string", # required
+ # prefix: "string", # required
+ # },
+ # trusted_signers: { # required
+ # enabled: false, # required
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # price_class: "PriceClass_100", # accepts PriceClass_100, PriceClass_200, PriceClass_All
+ # enabled: false, # required
+ # },
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.streaming_distribution.id #=> String
+ # resp.streaming_distribution.arn #=> String
+ # resp.streaming_distribution.status #=> String
+ # resp.streaming_distribution.last_modified_time #=> Time
+ # resp.streaming_distribution.domain_name #=> String
+ # resp.streaming_distribution.active_trusted_signers.enabled #=> Boolean
+ # resp.streaming_distribution.active_trusted_signers.quantity #=> Integer
+ # resp.streaming_distribution.active_trusted_signers.items #=> Array
+ # resp.streaming_distribution.active_trusted_signers.items[0].aws_account_number #=> String
+ # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
+ # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
+ # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
+ # resp.streaming_distribution.streaming_distribution_config.caller_reference #=> String
+ # resp.streaming_distribution.streaming_distribution_config.s3_origin.domain_name #=> String
+ # resp.streaming_distribution.streaming_distribution_config.s3_origin.origin_access_identity #=> String
+ # resp.streaming_distribution.streaming_distribution_config.aliases.quantity #=> Integer
+ # resp.streaming_distribution.streaming_distribution_config.aliases.items #=> Array
+ # resp.streaming_distribution.streaming_distribution_config.aliases.items[0] #=> String
+ # resp.streaming_distribution.streaming_distribution_config.comment #=> String
+ # resp.streaming_distribution.streaming_distribution_config.logging.enabled #=> Boolean
+ # resp.streaming_distribution.streaming_distribution_config.logging.bucket #=> String
+ # resp.streaming_distribution.streaming_distribution_config.logging.prefix #=> String
+ # resp.streaming_distribution.streaming_distribution_config.trusted_signers.enabled #=> Boolean
+ # resp.streaming_distribution.streaming_distribution_config.trusted_signers.quantity #=> Integer
+ # resp.streaming_distribution.streaming_distribution_config.trusted_signers.items #=> Array
+ # resp.streaming_distribution.streaming_distribution_config.trusted_signers.items[0] #=> String
+ # resp.streaming_distribution.streaming_distribution_config.price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
+ # resp.streaming_distribution.streaming_distribution_config.enabled #=> Boolean
+ # resp.location #=> String
+ # resp.etag #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateStreamingDistribution2017_03_25 AWS API Documentation
+ #
+ # @overload create_streaming_distribution(params = {})
+ # @param [Hash] params ({})
+ def create_streaming_distribution(params = {}, options = {})
+ req = build_request(:create_streaming_distribution, params)
+ req.send_request(options)
+ end
- # Create a new streaming distribution with tags.
- # @option params [required, Types::StreamingDistributionConfigWithTags] :streaming_distribution_config_with_tags
- # The streaming distribution's configuration information.
- # @return [Types::CreateStreamingDistributionWithTagsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::CreateStreamingDistributionWithTagsResult#streaming_distribution #StreamingDistribution} => Types::StreamingDistribution
- # * {Types::CreateStreamingDistributionWithTagsResult#location #Location} => String
- # * {Types::CreateStreamingDistributionWithTagsResult#etag #ETag} => String
- #
- # @example Request syntax with placeholder values
- # resp = client.create_streaming_distribution_with_tags({
- # streaming_distribution_config_with_tags: { # required
- # streaming_distribution_config: { # required
- # caller_reference: "string", # required
- # s3_origin: { # required
- # domain_name: "string", # required
- # origin_access_identity: "string", # required
- # },
- # aliases: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # comment: "string", # required
- # logging: {
- # enabled: false, # required
- # bucket: "string", # required
- # prefix: "string", # required
- # },
- # trusted_signers: { # required
- # enabled: false, # required
- # quantity: 1, # required
- # items: ["string"],
- # },
- # price_class: "PriceClass_100", # accepts PriceClass_100, PriceClass_200, PriceClass_All
- # enabled: false, # required
- # },
- # tags: { # required
- # items: [
- # {
- # key: "TagKey", # required
- # value: "TagValue",
- # },
- # ],
- # },
- # },
- # })
- #
- # @example Response structure
- # resp.streaming_distribution.id #=> String
- # resp.streaming_distribution.arn #=> String
- # resp.streaming_distribution.status #=> String
- # resp.streaming_distribution.last_modified_time #=> Time
- # resp.streaming_distribution.domain_name #=> String
- # resp.streaming_distribution.active_trusted_signers.enabled #=> Boolean
- # resp.streaming_distribution.active_trusted_signers.quantity #=> Integer
- # resp.streaming_distribution.active_trusted_signers.items #=> Array
- # resp.streaming_distribution.active_trusted_signers.items[0].aws_account_number #=> String
- # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
- # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
- # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
- # resp.streaming_distribution.streaming_distribution_config.caller_reference #=> String
- # resp.streaming_distribution.streaming_distribution_config.s3_origin.domain_name #=> String
- # resp.streaming_distribution.streaming_distribution_config.s3_origin.origin_access_identity #=> String
- # resp.streaming_distribution.streaming_distribution_config.aliases.quantity #=> Integer
- # resp.streaming_distribution.streaming_distribution_config.aliases.items #=> Array
- # resp.streaming_distribution.streaming_distribution_config.aliases.items[0] #=> String
- # resp.streaming_distribution.streaming_distribution_config.comment #=> String
- # resp.streaming_distribution.streaming_distribution_config.logging.enabled #=> Boolean
- # resp.streaming_distribution.streaming_distribution_config.logging.bucket #=> String
- # resp.streaming_distribution.streaming_distribution_config.logging.prefix #=> String
- # resp.streaming_distribution.streaming_distribution_config.trusted_signers.enabled #=> Boolean
- # resp.streaming_distribution.streaming_distribution_config.trusted_signers.quantity #=> Integer
- # resp.streaming_distribution.streaming_distribution_config.trusted_signers.items #=> Array
- # resp.streaming_distribution.streaming_distribution_config.trusted_signers.items[0] #=> String
- # resp.streaming_distribution.streaming_distribution_config.price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
- # resp.streaming_distribution.streaming_distribution_config.enabled #=> Boolean
- # resp.location #=> String
- # resp.etag #=> String
- # @overload create_streaming_distribution_with_tags(params = {})
- # @param [Hash] params ({})
- def create_streaming_distribution_with_tags(params = {}, options = {})
- req = build_request(:create_streaming_distribution_with_tags, params)
- req.send_request(options)
- end
+ # Create a new streaming distribution with tags.
+ #
+ # @option params [required, Types::StreamingDistributionConfigWithTags] :streaming_distribution_config_with_tags
+ # The streaming distribution's configuration information.
+ #
+ # @return [Types::CreateStreamingDistributionWithTagsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::CreateStreamingDistributionWithTagsResult#streaming_distribution #streaming_distribution} => Types::StreamingDistribution
+ # * {Types::CreateStreamingDistributionWithTagsResult#location #location} => String
+ # * {Types::CreateStreamingDistributionWithTagsResult#etag #etag} => String
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.create_streaming_distribution_with_tags({
+ # streaming_distribution_config_with_tags: { # required
+ # streaming_distribution_config: { # required
+ # caller_reference: "string", # required
+ # s3_origin: { # required
+ # domain_name: "string", # required
+ # origin_access_identity: "string", # required
+ # },
+ # aliases: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # comment: "string", # required
+ # logging: {
+ # enabled: false, # required
+ # bucket: "string", # required
+ # prefix: "string", # required
+ # },
+ # trusted_signers: { # required
+ # enabled: false, # required
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # price_class: "PriceClass_100", # accepts PriceClass_100, PriceClass_200, PriceClass_All
+ # enabled: false, # required
+ # },
+ # tags: { # required
+ # items: [
+ # {
+ # key: "TagKey", # required
+ # value: "TagValue",
+ # },
+ # ],
+ # },
+ # },
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.streaming_distribution.id #=> String
+ # resp.streaming_distribution.arn #=> String
+ # resp.streaming_distribution.status #=> String
+ # resp.streaming_distribution.last_modified_time #=> Time
+ # resp.streaming_distribution.domain_name #=> String
+ # resp.streaming_distribution.active_trusted_signers.enabled #=> Boolean
+ # resp.streaming_distribution.active_trusted_signers.quantity #=> Integer
+ # resp.streaming_distribution.active_trusted_signers.items #=> Array
+ # resp.streaming_distribution.active_trusted_signers.items[0].aws_account_number #=> String
+ # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
+ # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
+ # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
+ # resp.streaming_distribution.streaming_distribution_config.caller_reference #=> String
+ # resp.streaming_distribution.streaming_distribution_config.s3_origin.domain_name #=> String
+ # resp.streaming_distribution.streaming_distribution_config.s3_origin.origin_access_identity #=> String
+ # resp.streaming_distribution.streaming_distribution_config.aliases.quantity #=> Integer
+ # resp.streaming_distribution.streaming_distribution_config.aliases.items #=> Array
+ # resp.streaming_distribution.streaming_distribution_config.aliases.items[0] #=> String
+ # resp.streaming_distribution.streaming_distribution_config.comment #=> String
+ # resp.streaming_distribution.streaming_distribution_config.logging.enabled #=> Boolean
+ # resp.streaming_distribution.streaming_distribution_config.logging.bucket #=> String
+ # resp.streaming_distribution.streaming_distribution_config.logging.prefix #=> String
+ # resp.streaming_distribution.streaming_distribution_config.trusted_signers.enabled #=> Boolean
+ # resp.streaming_distribution.streaming_distribution_config.trusted_signers.quantity #=> Integer
+ # resp.streaming_distribution.streaming_distribution_config.trusted_signers.items #=> Array
+ # resp.streaming_distribution.streaming_distribution_config.trusted_signers.items[0] #=> String
+ # resp.streaming_distribution.streaming_distribution_config.price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
+ # resp.streaming_distribution.streaming_distribution_config.enabled #=> Boolean
+ # resp.location #=> String
+ # resp.etag #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/CreateStreamingDistributionWithTags2017_03_25 AWS API Documentation
+ #
+ # @overload create_streaming_distribution_with_tags(params = {})
+ # @param [Hash] params ({})
+ def create_streaming_distribution_with_tags(params = {}, options = {})
+ req = build_request(:create_streaming_distribution_with_tags, params)
+ req.send_request(options)
+ end
- # Delete an origin access identity.
- # @option params [required, String] :id
- # The origin access identity's ID.
- # @option params [String] :if_match
- # The value of the `ETag` header you received from a previous `GET` or
- # `PUT` request. For example: `E2QWRUHAPOMQZL`.
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
- #
- # @example Request syntax with placeholder values
- # resp = client.delete_cloud_front_origin_access_identity({
- # id: "string", # required
- # if_match: "string",
- # })
- # @overload delete_cloud_front_origin_access_identity(params = {})
- # @param [Hash] params ({})
- def delete_cloud_front_origin_access_identity(params = {}, options = {})
- req = build_request(:delete_cloud_front_origin_access_identity, params)
- req.send_request(options)
- end
+ # Delete an origin access identity.
+ #
+ # @option params [required, String] :id
+ # The origin access identity's ID.
+ #
+ # @option params [String] :if_match
+ # The value of the `ETag` header you received from a previous `GET` or
+ # `PUT` request. For example: `E2QWRUHAPOMQZL`.
+ #
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.delete_cloud_front_origin_access_identity({
+ # id: "string", # required
+ # if_match: "string",
+ # })
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DeleteCloudFrontOriginAccessIdentity2017_03_25 AWS API Documentation
+ #
+ # @overload delete_cloud_front_origin_access_identity(params = {})
+ # @param [Hash] params ({})
+ def delete_cloud_front_origin_access_identity(params = {}, options = {})
+ req = build_request(:delete_cloud_front_origin_access_identity, params)
+ req.send_request(options)
+ end
- # Delete a distribution.
- # @option params [required, String] :id
- # The distribution ID.
- # @option params [String] :if_match
- # The value of the `ETag` header that you received when you disabled the
- # distribution. For example: `E2QWRUHAPOMQZL`.
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
- #
- # @example Request syntax with placeholder values
- # resp = client.delete_distribution({
- # id: "string", # required
- # if_match: "string",
- # })
- # @overload delete_distribution(params = {})
- # @param [Hash] params ({})
- def delete_distribution(params = {}, options = {})
- req = build_request(:delete_distribution, params)
- req.send_request(options)
- end
+ # Delete a distribution.
+ #
+ # @option params [required, String] :id
+ # The distribution ID.
+ #
+ # @option params [String] :if_match
+ # The value of the `ETag` header that you received when you disabled the
+ # distribution. For example: `E2QWRUHAPOMQZL`.
+ #
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.delete_distribution({
+ # id: "string", # required
+ # if_match: "string",
+ # })
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DeleteDistribution2017_03_25 AWS API Documentation
+ #
+ # @overload delete_distribution(params = {})
+ # @param [Hash] params ({})
+ def delete_distribution(params = {}, options = {})
+ req = build_request(:delete_distribution, params)
+ req.send_request(options)
+ end
- # 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][1] in the *Amazon CloudFront
- # Developer Guide*.
- #
- #
- #
- # [1]: http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/HowToDeleteDistribution.html
- # @option params [required, String] :id
- # The distribution ID.
- # @option params [String] :if_match
- # The value of the `ETag` header that you received when you disabled the
- # streaming distribution. For example: `E2QWRUHAPOMQZL`.
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
- #
- # @example Request syntax with placeholder values
- # resp = client.delete_streaming_distribution({
- # id: "string", # required
- # if_match: "string",
- # })
- # @overload delete_streaming_distribution(params = {})
- # @param [Hash] params ({})
- def delete_streaming_distribution(params = {}, options = {})
- req = build_request(:delete_streaming_distribution, params)
- req.send_request(options)
- end
+ # 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][1] in the *Amazon CloudFront
+ # Developer Guide*.
+ #
+ #
+ #
+ # [1]: http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/HowToDeleteDistribution.html
+ #
+ # @option params [required, String] :id
+ # The distribution ID.
+ #
+ # @option params [String] :if_match
+ # The value of the `ETag` header that you received when you disabled the
+ # streaming distribution. For example: `E2QWRUHAPOMQZL`.
+ #
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.delete_streaming_distribution({
+ # id: "string", # required
+ # if_match: "string",
+ # })
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/DeleteStreamingDistribution2017_03_25 AWS API Documentation
+ #
+ # @overload delete_streaming_distribution(params = {})
+ # @param [Hash] params ({})
+ def delete_streaming_distribution(params = {}, options = {})
+ req = build_request(:delete_streaming_distribution, params)
+ req.send_request(options)
+ end
- # Get the information about an origin access identity.
- # @option params [required, String] :id
- # The identity's ID.
- # @return [Types::GetCloudFrontOriginAccessIdentityResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::GetCloudFrontOriginAccessIdentityResult#cloud_front_origin_access_identity #CloudFrontOriginAccessIdentity} => Types::CloudFrontOriginAccessIdentity
- # * {Types::GetCloudFrontOriginAccessIdentityResult#etag #ETag} => String
- #
- # @example Request syntax with placeholder values
- # resp = client.get_cloud_front_origin_access_identity({
- # id: "string", # required
- # })
- #
- # @example Response structure
- # resp.cloud_front_origin_access_identity.id #=> String
- # resp.cloud_front_origin_access_identity.s3_canonical_user_id #=> String
- # resp.cloud_front_origin_access_identity.cloud_front_origin_access_identity_config.caller_reference #=> String
- # resp.cloud_front_origin_access_identity.cloud_front_origin_access_identity_config.comment #=> String
- # resp.etag #=> String
- # @overload get_cloud_front_origin_access_identity(params = {})
- # @param [Hash] params ({})
- def get_cloud_front_origin_access_identity(params = {}, options = {})
- req = build_request(:get_cloud_front_origin_access_identity, params)
- req.send_request(options)
- end
+ # Get the information about an origin access identity.
+ #
+ # @option params [required, String] :id
+ # The identity's ID.
+ #
+ # @return [Types::GetCloudFrontOriginAccessIdentityResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::GetCloudFrontOriginAccessIdentityResult#cloud_front_origin_access_identity #cloud_front_origin_access_identity} => Types::CloudFrontOriginAccessIdentity
+ # * {Types::GetCloudFrontOriginAccessIdentityResult#etag #etag} => String
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.get_cloud_front_origin_access_identity({
+ # id: "string", # required
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.cloud_front_origin_access_identity.id #=> String
+ # resp.cloud_front_origin_access_identity.s3_canonical_user_id #=> String
+ # resp.cloud_front_origin_access_identity.cloud_front_origin_access_identity_config.caller_reference #=> String
+ # resp.cloud_front_origin_access_identity.cloud_front_origin_access_identity_config.comment #=> String
+ # resp.etag #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetCloudFrontOriginAccessIdentity2017_03_25 AWS API Documentation
+ #
+ # @overload get_cloud_front_origin_access_identity(params = {})
+ # @param [Hash] params ({})
+ def get_cloud_front_origin_access_identity(params = {}, options = {})
+ req = build_request(:get_cloud_front_origin_access_identity, params)
+ req.send_request(options)
+ end
- # Get the configuration information about an origin access identity.
- # @option params [required, String] :id
- # The identity's ID.
- # @return [Types::GetCloudFrontOriginAccessIdentityConfigResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::GetCloudFrontOriginAccessIdentityConfigResult#cloud_front_origin_access_identity_config #CloudFrontOriginAccessIdentityConfig} => Types::CloudFrontOriginAccessIdentityConfig
- # * {Types::GetCloudFrontOriginAccessIdentityConfigResult#etag #ETag} => String
- #
- # @example Request syntax with placeholder values
- # resp = client.get_cloud_front_origin_access_identity_config({
- # id: "string", # required
- # })
- #
- # @example Response structure
- # resp.cloud_front_origin_access_identity_config.caller_reference #=> String
- # resp.cloud_front_origin_access_identity_config.comment #=> String
- # resp.etag #=> String
- # @overload get_cloud_front_origin_access_identity_config(params = {})
- # @param [Hash] params ({})
- def get_cloud_front_origin_access_identity_config(params = {}, options = {})
- req = build_request(:get_cloud_front_origin_access_identity_config, params)
- req.send_request(options)
- end
+ # Get the configuration information about an origin access identity.
+ #
+ # @option params [required, String] :id
+ # The identity's ID.
+ #
+ # @return [Types::GetCloudFrontOriginAccessIdentityConfigResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::GetCloudFrontOriginAccessIdentityConfigResult#cloud_front_origin_access_identity_config #cloud_front_origin_access_identity_config} => Types::CloudFrontOriginAccessIdentityConfig
+ # * {Types::GetCloudFrontOriginAccessIdentityConfigResult#etag #etag} => String
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.get_cloud_front_origin_access_identity_config({
+ # id: "string", # required
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.cloud_front_origin_access_identity_config.caller_reference #=> String
+ # resp.cloud_front_origin_access_identity_config.comment #=> String
+ # resp.etag #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetCloudFrontOriginAccessIdentityConfig2017_03_25 AWS API Documentation
+ #
+ # @overload get_cloud_front_origin_access_identity_config(params = {})
+ # @param [Hash] params ({})
+ def get_cloud_front_origin_access_identity_config(params = {}, options = {})
+ req = build_request(:get_cloud_front_origin_access_identity_config, params)
+ req.send_request(options)
+ end
- # Get the information about a distribution.
- # @option params [required, String] :id
- # The distribution's ID.
- # @return [Types::GetDistributionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::GetDistributionResult#distribution #Distribution} => Types::Distribution
- # * {Types::GetDistributionResult#etag #ETag} => String
- #
- # @example Request syntax with placeholder values
- # resp = client.get_distribution({
- # id: "string", # required
- # })
- #
- # @example Response structure
- # resp.distribution.id #=> String
- # resp.distribution.arn #=> String
- # resp.distribution.status #=> String
- # resp.distribution.last_modified_time #=> Time
- # resp.distribution.in_progress_invalidation_batches #=> Integer
- # resp.distribution.domain_name #=> String
- # resp.distribution.active_trusted_signers.enabled #=> Boolean
- # resp.distribution.active_trusted_signers.quantity #=> Integer
- # resp.distribution.active_trusted_signers.items #=> Array
- # resp.distribution.active_trusted_signers.items[0].aws_account_number #=> String
- # resp.distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
- # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
- # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
- # resp.distribution.distribution_config.caller_reference #=> String
- # resp.distribution.distribution_config.aliases.quantity #=> Integer
- # resp.distribution.distribution_config.aliases.items #=> Array
- # resp.distribution.distribution_config.aliases.items[0] #=> String
- # resp.distribution.distribution_config.default_root_object #=> String
- # resp.distribution.distribution_config.origins.quantity #=> Integer
- # resp.distribution.distribution_config.origins.items #=> Array
- # resp.distribution.distribution_config.origins.items[0].id #=> String
- # resp.distribution.distribution_config.origins.items[0].domain_name #=> String
- # resp.distribution.distribution_config.origins.items[0].origin_path #=> String
- # resp.distribution.distribution_config.origins.items[0].custom_headers.quantity #=> Integer
- # resp.distribution.distribution_config.origins.items[0].custom_headers.items #=> Array
- # resp.distribution.distribution_config.origins.items[0].custom_headers.items[0].header_name #=> String
- # resp.distribution.distribution_config.origins.items[0].custom_headers.items[0].header_value #=> String
- # resp.distribution.distribution_config.origins.items[0].s3_origin_config.origin_access_identity #=> String
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.http_port #=> Integer
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.https_port #=> Integer
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_protocol_policy #=> String, one of "http-only", "match-viewer", "https-only"
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.quantity #=> Integer
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items #=> Array
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items[0] #=> String, one of "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2"
- # resp.distribution.distribution_config.default_cache_behavior.target_origin_id #=> String
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string #=> Boolean
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items[0] #=> String
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.items[0] #=> String
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items[0] #=> String
- # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.enabled #=> Boolean
- # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String
- # resp.distribution.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
- # resp.distribution.distribution_config.default_cache_behavior.min_ttl #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution.distribution_config.default_cache_behavior.smooth_streaming #=> Boolean
- # resp.distribution.distribution_config.default_cache_behavior.default_ttl #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.max_ttl #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.compress #=> Boolean
- # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].lambda_function_arn #=> String
- # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
- # resp.distribution.distribution_config.cache_behaviors.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].path_pattern #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].target_origin_id #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items[0] #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items[0] #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items[0] #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.enabled #=> Boolean
- # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
- # resp.distribution.distribution_config.cache_behaviors.items[0].min_ttl #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution.distribution_config.cache_behaviors.items[0].smooth_streaming #=> Boolean
- # resp.distribution.distribution_config.cache_behaviors.items[0].default_ttl #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].max_ttl #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].compress #=> Boolean
- # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].lambda_function_arn #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
- # resp.distribution.distribution_config.custom_error_responses.quantity #=> Integer
- # resp.distribution.distribution_config.custom_error_responses.items #=> Array
- # resp.distribution.distribution_config.custom_error_responses.items[0].error_code #=> Integer
- # resp.distribution.distribution_config.custom_error_responses.items[0].response_page_path #=> String
- # resp.distribution.distribution_config.custom_error_responses.items[0].response_code #=> String
- # resp.distribution.distribution_config.custom_error_responses.items[0].error_caching_min_ttl #=> Integer
- # resp.distribution.distribution_config.comment #=> String
- # resp.distribution.distribution_config.logging.enabled #=> Boolean
- # resp.distribution.distribution_config.logging.include_cookies #=> Boolean
- # resp.distribution.distribution_config.logging.bucket #=> String
- # resp.distribution.distribution_config.logging.prefix #=> String
- # resp.distribution.distribution_config.price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
- # resp.distribution.distribution_config.enabled #=> Boolean
- # resp.distribution.distribution_config.viewer_certificate.cloud_front_default_certificate #=> Boolean
- # resp.distribution.distribution_config.viewer_certificate.iam_certificate_id #=> String
- # resp.distribution.distribution_config.viewer_certificate.acm_certificate_arn #=> String
- # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip"
- # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1"
- # resp.distribution.distribution_config.viewer_certificate.certificate #=> String
- # resp.distribution.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
- # resp.distribution.distribution_config.restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
- # resp.distribution.distribution_config.restrictions.geo_restriction.quantity #=> Integer
- # resp.distribution.distribution_config.restrictions.geo_restriction.items #=> Array
- # resp.distribution.distribution_config.restrictions.geo_restriction.items[0] #=> String
- # resp.distribution.distribution_config.web_acl_id #=> String
- # resp.distribution.distribution_config.http_version #=> String, one of "http1.1", "http2"
- # resp.distribution.distribution_config.is_ipv6_enabled #=> Boolean
- # resp.etag #=> String
- # @overload get_distribution(params = {})
- # @param [Hash] params ({})
- def get_distribution(params = {}, options = {})
- req = build_request(:get_distribution, params)
- req.send_request(options)
- end
+ # Get the information about a distribution.
+ #
+ # @option params [required, String] :id
+ # The distribution's ID.
+ #
+ # @return [Types::GetDistributionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::GetDistributionResult#distribution #distribution} => Types::Distribution
+ # * {Types::GetDistributionResult#etag #etag} => String
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.get_distribution({
+ # id: "string", # required
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.distribution.id #=> String
+ # resp.distribution.arn #=> String
+ # resp.distribution.status #=> String
+ # resp.distribution.last_modified_time #=> Time
+ # resp.distribution.in_progress_invalidation_batches #=> Integer
+ # resp.distribution.domain_name #=> String
+ # resp.distribution.active_trusted_signers.enabled #=> Boolean
+ # resp.distribution.active_trusted_signers.quantity #=> Integer
+ # resp.distribution.active_trusted_signers.items #=> Array
+ # resp.distribution.active_trusted_signers.items[0].aws_account_number #=> String
+ # resp.distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
+ # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
+ # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
+ # resp.distribution.distribution_config.caller_reference #=> String
+ # resp.distribution.distribution_config.aliases.quantity #=> Integer
+ # resp.distribution.distribution_config.aliases.items #=> Array
+ # resp.distribution.distribution_config.aliases.items[0] #=> String
+ # resp.distribution.distribution_config.default_root_object #=> String
+ # resp.distribution.distribution_config.origins.quantity #=> Integer
+ # resp.distribution.distribution_config.origins.items #=> Array
+ # resp.distribution.distribution_config.origins.items[0].id #=> String
+ # resp.distribution.distribution_config.origins.items[0].domain_name #=> String
+ # resp.distribution.distribution_config.origins.items[0].origin_path #=> String
+ # resp.distribution.distribution_config.origins.items[0].custom_headers.quantity #=> Integer
+ # resp.distribution.distribution_config.origins.items[0].custom_headers.items #=> Array
+ # resp.distribution.distribution_config.origins.items[0].custom_headers.items[0].header_name #=> String
+ # resp.distribution.distribution_config.origins.items[0].custom_headers.items[0].header_value #=> String
+ # resp.distribution.distribution_config.origins.items[0].s3_origin_config.origin_access_identity #=> String
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.http_port #=> Integer
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.https_port #=> Integer
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_protocol_policy #=> String, one of "http-only", "match-viewer", "https-only"
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.quantity #=> Integer
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items #=> Array
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items[0] #=> String, one of "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2"
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_read_timeout #=> Integer
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.target_origin_id #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string #=> Boolean
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items[0] #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.items[0] #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items[0] #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.enabled #=> Boolean
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
+ # resp.distribution.distribution_config.default_cache_behavior.min_ttl #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution.distribution_config.default_cache_behavior.smooth_streaming #=> Boolean
+ # resp.distribution.distribution_config.default_cache_behavior.default_ttl #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.max_ttl #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.compress #=> Boolean
+ # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].lambda_function_arn #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
+ # resp.distribution.distribution_config.cache_behaviors.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].path_pattern #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].target_origin_id #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items[0] #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items[0] #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items[0] #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.enabled #=> Boolean
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
+ # resp.distribution.distribution_config.cache_behaviors.items[0].min_ttl #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution.distribution_config.cache_behaviors.items[0].smooth_streaming #=> Boolean
+ # resp.distribution.distribution_config.cache_behaviors.items[0].default_ttl #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].max_ttl #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].compress #=> Boolean
+ # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].lambda_function_arn #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
+ # resp.distribution.distribution_config.custom_error_responses.quantity #=> Integer
+ # resp.distribution.distribution_config.custom_error_responses.items #=> Array
+ # resp.distribution.distribution_config.custom_error_responses.items[0].error_code #=> Integer
+ # resp.distribution.distribution_config.custom_error_responses.items[0].response_page_path #=> String
+ # resp.distribution.distribution_config.custom_error_responses.items[0].response_code #=> String
+ # resp.distribution.distribution_config.custom_error_responses.items[0].error_caching_min_ttl #=> Integer
+ # resp.distribution.distribution_config.comment #=> String
+ # resp.distribution.distribution_config.logging.enabled #=> Boolean
+ # resp.distribution.distribution_config.logging.include_cookies #=> Boolean
+ # resp.distribution.distribution_config.logging.bucket #=> String
+ # resp.distribution.distribution_config.logging.prefix #=> String
+ # resp.distribution.distribution_config.price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
+ # resp.distribution.distribution_config.enabled #=> Boolean
+ # resp.distribution.distribution_config.viewer_certificate.cloud_front_default_certificate #=> Boolean
+ # resp.distribution.distribution_config.viewer_certificate.iam_certificate_id #=> String
+ # resp.distribution.distribution_config.viewer_certificate.acm_certificate_arn #=> String
+ # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip"
+ # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1"
+ # resp.distribution.distribution_config.viewer_certificate.certificate #=> String
+ # resp.distribution.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
+ # resp.distribution.distribution_config.restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
+ # resp.distribution.distribution_config.restrictions.geo_restriction.quantity #=> Integer
+ # resp.distribution.distribution_config.restrictions.geo_restriction.items #=> Array
+ # resp.distribution.distribution_config.restrictions.geo_restriction.items[0] #=> String
+ # resp.distribution.distribution_config.web_acl_id #=> String
+ # resp.distribution.distribution_config.http_version #=> String, one of "http1.1", "http2"
+ # resp.distribution.distribution_config.is_ipv6_enabled #=> Boolean
+ # resp.etag #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetDistribution2017_03_25 AWS API Documentation
+ #
+ # @overload get_distribution(params = {})
+ # @param [Hash] params ({})
+ def get_distribution(params = {}, options = {})
+ req = build_request(:get_distribution, params)
+ req.send_request(options)
+ end
- # Get the configuration information about a distribution.
- # @option params [required, String] :id
- # The distribution's ID.
- # @return [Types::GetDistributionConfigResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::GetDistributionConfigResult#distribution_config #DistributionConfig} => Types::DistributionConfig
- # * {Types::GetDistributionConfigResult#etag #ETag} => String
- #
- # @example Request syntax with placeholder values
- # resp = client.get_distribution_config({
- # id: "string", # required
- # })
- #
- # @example Response structure
- # resp.distribution_config.caller_reference #=> String
- # resp.distribution_config.aliases.quantity #=> Integer
- # resp.distribution_config.aliases.items #=> Array
- # resp.distribution_config.aliases.items[0] #=> String
- # resp.distribution_config.default_root_object #=> String
- # resp.distribution_config.origins.quantity #=> Integer
- # resp.distribution_config.origins.items #=> Array
- # resp.distribution_config.origins.items[0].id #=> String
- # resp.distribution_config.origins.items[0].domain_name #=> String
- # resp.distribution_config.origins.items[0].origin_path #=> String
- # resp.distribution_config.origins.items[0].custom_headers.quantity #=> Integer
- # resp.distribution_config.origins.items[0].custom_headers.items #=> Array
- # resp.distribution_config.origins.items[0].custom_headers.items[0].header_name #=> String
- # resp.distribution_config.origins.items[0].custom_headers.items[0].header_value #=> String
- # resp.distribution_config.origins.items[0].s3_origin_config.origin_access_identity #=> String
- # resp.distribution_config.origins.items[0].custom_origin_config.http_port #=> Integer
- # resp.distribution_config.origins.items[0].custom_origin_config.https_port #=> Integer
- # resp.distribution_config.origins.items[0].custom_origin_config.origin_protocol_policy #=> String, one of "http-only", "match-viewer", "https-only"
- # resp.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.quantity #=> Integer
- # resp.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items #=> Array
- # resp.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items[0] #=> String, one of "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2"
- # resp.distribution_config.default_cache_behavior.target_origin_id #=> String
- # resp.distribution_config.default_cache_behavior.forwarded_values.query_string #=> Boolean
- # resp.distribution_config.default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
- # resp.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
- # resp.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items #=> Array
- # resp.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items[0] #=> String
- # resp.distribution_config.default_cache_behavior.forwarded_values.headers.quantity #=> Integer
- # resp.distribution_config.default_cache_behavior.forwarded_values.headers.items #=> Array
- # resp.distribution_config.default_cache_behavior.forwarded_values.headers.items[0] #=> String
- # resp.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.quantity #=> Integer
- # resp.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items #=> Array
- # resp.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items[0] #=> String
- # resp.distribution_config.default_cache_behavior.trusted_signers.enabled #=> Boolean
- # resp.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer
- # resp.distribution_config.default_cache_behavior.trusted_signers.items #=> Array
- # resp.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String
- # resp.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
- # resp.distribution_config.default_cache_behavior.min_ttl #=> Integer
- # resp.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer
- # resp.distribution_config.default_cache_behavior.allowed_methods.items #=> Array
- # resp.distribution_config.default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution_config.default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer
- # resp.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items #=> Array
- # resp.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution_config.default_cache_behavior.smooth_streaming #=> Boolean
- # resp.distribution_config.default_cache_behavior.default_ttl #=> Integer
- # resp.distribution_config.default_cache_behavior.max_ttl #=> Integer
- # resp.distribution_config.default_cache_behavior.compress #=> Boolean
- # resp.distribution_config.default_cache_behavior.lambda_function_associations.quantity #=> Integer
- # resp.distribution_config.default_cache_behavior.lambda_function_associations.items #=> Array
- # resp.distribution_config.default_cache_behavior.lambda_function_associations.items[0].lambda_function_arn #=> String
- # resp.distribution_config.default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
- # resp.distribution_config.cache_behaviors.quantity #=> Integer
- # resp.distribution_config.cache_behaviors.items #=> Array
- # resp.distribution_config.cache_behaviors.items[0].path_pattern #=> String
- # resp.distribution_config.cache_behaviors.items[0].target_origin_id #=> String
- # resp.distribution_config.cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
- # resp.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
- # resp.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
- # resp.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items #=> Array
- # resp.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items[0] #=> String
- # resp.distribution_config.cache_behaviors.items[0].forwarded_values.headers.quantity #=> Integer
- # resp.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items #=> Array
- # resp.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items[0] #=> String
- # resp.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.quantity #=> Integer
- # resp.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items #=> Array
- # resp.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items[0] #=> String
- # resp.distribution_config.cache_behaviors.items[0].trusted_signers.enabled #=> Boolean
- # resp.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer
- # resp.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array
- # resp.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String
- # resp.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
- # resp.distribution_config.cache_behaviors.items[0].min_ttl #=> Integer
- # resp.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer
- # resp.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array
- # resp.distribution_config.cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer
- # resp.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items #=> Array
- # resp.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution_config.cache_behaviors.items[0].smooth_streaming #=> Boolean
- # resp.distribution_config.cache_behaviors.items[0].default_ttl #=> Integer
- # resp.distribution_config.cache_behaviors.items[0].max_ttl #=> Integer
- # resp.distribution_config.cache_behaviors.items[0].compress #=> Boolean
- # resp.distribution_config.cache_behaviors.items[0].lambda_function_associations.quantity #=> Integer
- # resp.distribution_config.cache_behaviors.items[0].lambda_function_associations.items #=> Array
- # resp.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].lambda_function_arn #=> String
- # resp.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
- # resp.distribution_config.custom_error_responses.quantity #=> Integer
- # resp.distribution_config.custom_error_responses.items #=> Array
- # resp.distribution_config.custom_error_responses.items[0].error_code #=> Integer
- # resp.distribution_config.custom_error_responses.items[0].response_page_path #=> String
- # resp.distribution_config.custom_error_responses.items[0].response_code #=> String
- # resp.distribution_config.custom_error_responses.items[0].error_caching_min_ttl #=> Integer
- # resp.distribution_config.comment #=> String
- # resp.distribution_config.logging.enabled #=> Boolean
- # resp.distribution_config.logging.include_cookies #=> Boolean
- # resp.distribution_config.logging.bucket #=> String
- # resp.distribution_config.logging.prefix #=> String
- # resp.distribution_config.price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
- # resp.distribution_config.enabled #=> Boolean
- # resp.distribution_config.viewer_certificate.cloud_front_default_certificate #=> Boolean
- # resp.distribution_config.viewer_certificate.iam_certificate_id #=> String
- # resp.distribution_config.viewer_certificate.acm_certificate_arn #=> String
- # resp.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip"
- # resp.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1"
- # resp.distribution_config.viewer_certificate.certificate #=> String
- # resp.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
- # resp.distribution_config.restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
- # resp.distribution_config.restrictions.geo_restriction.quantity #=> Integer
- # resp.distribution_config.restrictions.geo_restriction.items #=> Array
- # resp.distribution_config.restrictions.geo_restriction.items[0] #=> String
- # resp.distribution_config.web_acl_id #=> String
- # resp.distribution_config.http_version #=> String, one of "http1.1", "http2"
- # resp.distribution_config.is_ipv6_enabled #=> Boolean
- # resp.etag #=> String
- # @overload get_distribution_config(params = {})
- # @param [Hash] params ({})
- def get_distribution_config(params = {}, options = {})
- req = build_request(:get_distribution_config, params)
- req.send_request(options)
- end
+ # Get the configuration information about a distribution.
+ #
+ # @option params [required, String] :id
+ # The distribution's ID.
+ #
+ # @return [Types::GetDistributionConfigResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::GetDistributionConfigResult#distribution_config #distribution_config} => Types::DistributionConfig
+ # * {Types::GetDistributionConfigResult#etag #etag} => String
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.get_distribution_config({
+ # id: "string", # required
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.distribution_config.caller_reference #=> String
+ # resp.distribution_config.aliases.quantity #=> Integer
+ # resp.distribution_config.aliases.items #=> Array
+ # resp.distribution_config.aliases.items[0] #=> String
+ # resp.distribution_config.default_root_object #=> String
+ # resp.distribution_config.origins.quantity #=> Integer
+ # resp.distribution_config.origins.items #=> Array
+ # resp.distribution_config.origins.items[0].id #=> String
+ # resp.distribution_config.origins.items[0].domain_name #=> String
+ # resp.distribution_config.origins.items[0].origin_path #=> String
+ # resp.distribution_config.origins.items[0].custom_headers.quantity #=> Integer
+ # resp.distribution_config.origins.items[0].custom_headers.items #=> Array
+ # resp.distribution_config.origins.items[0].custom_headers.items[0].header_name #=> String
+ # resp.distribution_config.origins.items[0].custom_headers.items[0].header_value #=> String
+ # resp.distribution_config.origins.items[0].s3_origin_config.origin_access_identity #=> String
+ # resp.distribution_config.origins.items[0].custom_origin_config.http_port #=> Integer
+ # resp.distribution_config.origins.items[0].custom_origin_config.https_port #=> Integer
+ # resp.distribution_config.origins.items[0].custom_origin_config.origin_protocol_policy #=> String, one of "http-only", "match-viewer", "https-only"
+ # resp.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.quantity #=> Integer
+ # resp.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items #=> Array
+ # resp.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items[0] #=> String, one of "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2"
+ # resp.distribution_config.origins.items[0].custom_origin_config.origin_read_timeout #=> Integer
+ # resp.distribution_config.origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
+ # resp.distribution_config.default_cache_behavior.target_origin_id #=> String
+ # resp.distribution_config.default_cache_behavior.forwarded_values.query_string #=> Boolean
+ # resp.distribution_config.default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
+ # resp.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
+ # resp.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items #=> Array
+ # resp.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items[0] #=> String
+ # resp.distribution_config.default_cache_behavior.forwarded_values.headers.quantity #=> Integer
+ # resp.distribution_config.default_cache_behavior.forwarded_values.headers.items #=> Array
+ # resp.distribution_config.default_cache_behavior.forwarded_values.headers.items[0] #=> String
+ # resp.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.quantity #=> Integer
+ # resp.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items #=> Array
+ # resp.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items[0] #=> String
+ # resp.distribution_config.default_cache_behavior.trusted_signers.enabled #=> Boolean
+ # resp.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer
+ # resp.distribution_config.default_cache_behavior.trusted_signers.items #=> Array
+ # resp.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String
+ # resp.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
+ # resp.distribution_config.default_cache_behavior.min_ttl #=> Integer
+ # resp.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer
+ # resp.distribution_config.default_cache_behavior.allowed_methods.items #=> Array
+ # resp.distribution_config.default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution_config.default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer
+ # resp.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items #=> Array
+ # resp.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution_config.default_cache_behavior.smooth_streaming #=> Boolean
+ # resp.distribution_config.default_cache_behavior.default_ttl #=> Integer
+ # resp.distribution_config.default_cache_behavior.max_ttl #=> Integer
+ # resp.distribution_config.default_cache_behavior.compress #=> Boolean
+ # resp.distribution_config.default_cache_behavior.lambda_function_associations.quantity #=> Integer
+ # resp.distribution_config.default_cache_behavior.lambda_function_associations.items #=> Array
+ # resp.distribution_config.default_cache_behavior.lambda_function_associations.items[0].lambda_function_arn #=> String
+ # resp.distribution_config.default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
+ # resp.distribution_config.cache_behaviors.quantity #=> Integer
+ # resp.distribution_config.cache_behaviors.items #=> Array
+ # resp.distribution_config.cache_behaviors.items[0].path_pattern #=> String
+ # resp.distribution_config.cache_behaviors.items[0].target_origin_id #=> String
+ # resp.distribution_config.cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
+ # resp.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
+ # resp.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
+ # resp.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items #=> Array
+ # resp.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items[0] #=> String
+ # resp.distribution_config.cache_behaviors.items[0].forwarded_values.headers.quantity #=> Integer
+ # resp.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items #=> Array
+ # resp.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items[0] #=> String
+ # resp.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.quantity #=> Integer
+ # resp.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items #=> Array
+ # resp.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items[0] #=> String
+ # resp.distribution_config.cache_behaviors.items[0].trusted_signers.enabled #=> Boolean
+ # resp.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer
+ # resp.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array
+ # resp.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String
+ # resp.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
+ # resp.distribution_config.cache_behaviors.items[0].min_ttl #=> Integer
+ # resp.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer
+ # resp.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array
+ # resp.distribution_config.cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer
+ # resp.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items #=> Array
+ # resp.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution_config.cache_behaviors.items[0].smooth_streaming #=> Boolean
+ # resp.distribution_config.cache_behaviors.items[0].default_ttl #=> Integer
+ # resp.distribution_config.cache_behaviors.items[0].max_ttl #=> Integer
+ # resp.distribution_config.cache_behaviors.items[0].compress #=> Boolean
+ # resp.distribution_config.cache_behaviors.items[0].lambda_function_associations.quantity #=> Integer
+ # resp.distribution_config.cache_behaviors.items[0].lambda_function_associations.items #=> Array
+ # resp.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].lambda_function_arn #=> String
+ # resp.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
+ # resp.distribution_config.custom_error_responses.quantity #=> Integer
+ # resp.distribution_config.custom_error_responses.items #=> Array
+ # resp.distribution_config.custom_error_responses.items[0].error_code #=> Integer
+ # resp.distribution_config.custom_error_responses.items[0].response_page_path #=> String
+ # resp.distribution_config.custom_error_responses.items[0].response_code #=> String
+ # resp.distribution_config.custom_error_responses.items[0].error_caching_min_ttl #=> Integer
+ # resp.distribution_config.comment #=> String
+ # resp.distribution_config.logging.enabled #=> Boolean
+ # resp.distribution_config.logging.include_cookies #=> Boolean
+ # resp.distribution_config.logging.bucket #=> String
+ # resp.distribution_config.logging.prefix #=> String
+ # resp.distribution_config.price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
+ # resp.distribution_config.enabled #=> Boolean
+ # resp.distribution_config.viewer_certificate.cloud_front_default_certificate #=> Boolean
+ # resp.distribution_config.viewer_certificate.iam_certificate_id #=> String
+ # resp.distribution_config.viewer_certificate.acm_certificate_arn #=> String
+ # resp.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip"
+ # resp.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1"
+ # resp.distribution_config.viewer_certificate.certificate #=> String
+ # resp.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
+ # resp.distribution_config.restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
+ # resp.distribution_config.restrictions.geo_restriction.quantity #=> Integer
+ # resp.distribution_config.restrictions.geo_restriction.items #=> Array
+ # resp.distribution_config.restrictions.geo_restriction.items[0] #=> String
+ # resp.distribution_config.web_acl_id #=> String
+ # resp.distribution_config.http_version #=> String, one of "http1.1", "http2"
+ # resp.distribution_config.is_ipv6_enabled #=> Boolean
+ # resp.etag #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetDistributionConfig2017_03_25 AWS API Documentation
+ #
+ # @overload get_distribution_config(params = {})
+ # @param [Hash] params ({})
+ def get_distribution_config(params = {}, options = {})
+ req = build_request(:get_distribution_config, params)
+ req.send_request(options)
+ end
- # Get the information about an invalidation.
- # @option params [required, String] :distribution_id
- # The distribution's ID.
- # @option params [required, String] :id
- # The identifier for the invalidation request, for example,
- # `IDFDVBD632BHDS5`.
- # @return [Types::GetInvalidationResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::GetInvalidationResult#invalidation #Invalidation} => Types::Invalidation
- #
- # @example Request syntax with placeholder values
- # resp = client.get_invalidation({
- # distribution_id: "string", # required
- # id: "string", # required
- # })
- #
- # @example Response structure
- # resp.invalidation.id #=> String
- # resp.invalidation.status #=> String
- # resp.invalidation.create_time #=> Time
- # resp.invalidation.invalidation_batch.paths.quantity #=> Integer
- # resp.invalidation.invalidation_batch.paths.items #=> Array
- # resp.invalidation.invalidation_batch.paths.items[0] #=> String
- # resp.invalidation.invalidation_batch.caller_reference #=> String
- # @overload get_invalidation(params = {})
- # @param [Hash] params ({})
- def get_invalidation(params = {}, options = {})
- req = build_request(:get_invalidation, params)
- req.send_request(options)
- end
+ # Get the information about an invalidation.
+ #
+ # @option params [required, String] :distribution_id
+ # The distribution's ID.
+ #
+ # @option params [required, String] :id
+ # The identifier for the invalidation request, for example,
+ # `IDFDVBD632BHDS5`.
+ #
+ # @return [Types::GetInvalidationResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::GetInvalidationResult#invalidation #invalidation} => Types::Invalidation
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.get_invalidation({
+ # distribution_id: "string", # required
+ # id: "string", # required
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.invalidation.id #=> String
+ # resp.invalidation.status #=> String
+ # resp.invalidation.create_time #=> Time
+ # resp.invalidation.invalidation_batch.paths.quantity #=> Integer
+ # resp.invalidation.invalidation_batch.paths.items #=> Array
+ # resp.invalidation.invalidation_batch.paths.items[0] #=> String
+ # resp.invalidation.invalidation_batch.caller_reference #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetInvalidation2017_03_25 AWS API Documentation
+ #
+ # @overload get_invalidation(params = {})
+ # @param [Hash] params ({})
+ def get_invalidation(params = {}, options = {})
+ req = build_request(:get_invalidation, params)
+ req.send_request(options)
+ end
- # Gets information about a specified RTMP distribution, including the
- # distribution configuration.
- # @option params [required, String] :id
- # The streaming distribution's ID.
- # @return [Types::GetStreamingDistributionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::GetStreamingDistributionResult#streaming_distribution #StreamingDistribution} => Types::StreamingDistribution
- # * {Types::GetStreamingDistributionResult#etag #ETag} => String
- #
- # @example Request syntax with placeholder values
- # resp = client.get_streaming_distribution({
- # id: "string", # required
- # })
- #
- # @example Response structure
- # resp.streaming_distribution.id #=> String
- # resp.streaming_distribution.arn #=> String
- # resp.streaming_distribution.status #=> String
- # resp.streaming_distribution.last_modified_time #=> Time
- # resp.streaming_distribution.domain_name #=> String
- # resp.streaming_distribution.active_trusted_signers.enabled #=> Boolean
- # resp.streaming_distribution.active_trusted_signers.quantity #=> Integer
- # resp.streaming_distribution.active_trusted_signers.items #=> Array
- # resp.streaming_distribution.active_trusted_signers.items[0].aws_account_number #=> String
- # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
- # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
- # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
- # resp.streaming_distribution.streaming_distribution_config.caller_reference #=> String
- # resp.streaming_distribution.streaming_distribution_config.s3_origin.domain_name #=> String
- # resp.streaming_distribution.streaming_distribution_config.s3_origin.origin_access_identity #=> String
- # resp.streaming_distribution.streaming_distribution_config.aliases.quantity #=> Integer
- # resp.streaming_distribution.streaming_distribution_config.aliases.items #=> Array
- # resp.streaming_distribution.streaming_distribution_config.aliases.items[0] #=> String
- # resp.streaming_distribution.streaming_distribution_config.comment #=> String
- # resp.streaming_distribution.streaming_distribution_config.logging.enabled #=> Boolean
- # resp.streaming_distribution.streaming_distribution_config.logging.bucket #=> String
- # resp.streaming_distribution.streaming_distribution_config.logging.prefix #=> String
- # resp.streaming_distribution.streaming_distribution_config.trusted_signers.enabled #=> Boolean
- # resp.streaming_distribution.streaming_distribution_config.trusted_signers.quantity #=> Integer
- # resp.streaming_distribution.streaming_distribution_config.trusted_signers.items #=> Array
- # resp.streaming_distribution.streaming_distribution_config.trusted_signers.items[0] #=> String
- # resp.streaming_distribution.streaming_distribution_config.price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
- # resp.streaming_distribution.streaming_distribution_config.enabled #=> Boolean
- # resp.etag #=> String
- # @overload get_streaming_distribution(params = {})
- # @param [Hash] params ({})
- def get_streaming_distribution(params = {}, options = {})
- req = build_request(:get_streaming_distribution, params)
- req.send_request(options)
- end
+ # Gets information about a specified RTMP distribution, including the
+ # distribution configuration.
+ #
+ # @option params [required, String] :id
+ # The streaming distribution's ID.
+ #
+ # @return [Types::GetStreamingDistributionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::GetStreamingDistributionResult#streaming_distribution #streaming_distribution} => Types::StreamingDistribution
+ # * {Types::GetStreamingDistributionResult#etag #etag} => String
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.get_streaming_distribution({
+ # id: "string", # required
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.streaming_distribution.id #=> String
+ # resp.streaming_distribution.arn #=> String
+ # resp.streaming_distribution.status #=> String
+ # resp.streaming_distribution.last_modified_time #=> Time
+ # resp.streaming_distribution.domain_name #=> String
+ # resp.streaming_distribution.active_trusted_signers.enabled #=> Boolean
+ # resp.streaming_distribution.active_trusted_signers.quantity #=> Integer
+ # resp.streaming_distribution.active_trusted_signers.items #=> Array
+ # resp.streaming_distribution.active_trusted_signers.items[0].aws_account_number #=> String
+ # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
+ # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
+ # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
+ # resp.streaming_distribution.streaming_distribution_config.caller_reference #=> String
+ # resp.streaming_distribution.streaming_distribution_config.s3_origin.domain_name #=> String
+ # resp.streaming_distribution.streaming_distribution_config.s3_origin.origin_access_identity #=> String
+ # resp.streaming_distribution.streaming_distribution_config.aliases.quantity #=> Integer
+ # resp.streaming_distribution.streaming_distribution_config.aliases.items #=> Array
+ # resp.streaming_distribution.streaming_distribution_config.aliases.items[0] #=> String
+ # resp.streaming_distribution.streaming_distribution_config.comment #=> String
+ # resp.streaming_distribution.streaming_distribution_config.logging.enabled #=> Boolean
+ # resp.streaming_distribution.streaming_distribution_config.logging.bucket #=> String
+ # resp.streaming_distribution.streaming_distribution_config.logging.prefix #=> String
+ # resp.streaming_distribution.streaming_distribution_config.trusted_signers.enabled #=> Boolean
+ # resp.streaming_distribution.streaming_distribution_config.trusted_signers.quantity #=> Integer
+ # resp.streaming_distribution.streaming_distribution_config.trusted_signers.items #=> Array
+ # resp.streaming_distribution.streaming_distribution_config.trusted_signers.items[0] #=> String
+ # resp.streaming_distribution.streaming_distribution_config.price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
+ # resp.streaming_distribution.streaming_distribution_config.enabled #=> Boolean
+ # resp.etag #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetStreamingDistribution2017_03_25 AWS API Documentation
+ #
+ # @overload get_streaming_distribution(params = {})
+ # @param [Hash] params ({})
+ def get_streaming_distribution(params = {}, options = {})
+ req = build_request(:get_streaming_distribution, params)
+ req.send_request(options)
+ end
- # Get the configuration information about a streaming distribution.
- # @option params [required, String] :id
- # The streaming distribution's ID.
- # @return [Types::GetStreamingDistributionConfigResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::GetStreamingDistributionConfigResult#streaming_distribution_config #StreamingDistributionConfig} => Types::StreamingDistributionConfig
- # * {Types::GetStreamingDistributionConfigResult#etag #ETag} => String
- #
- # @example Request syntax with placeholder values
- # resp = client.get_streaming_distribution_config({
- # id: "string", # required
- # })
- #
- # @example Response structure
- # resp.streaming_distribution_config.caller_reference #=> String
- # resp.streaming_distribution_config.s3_origin.domain_name #=> String
- # resp.streaming_distribution_config.s3_origin.origin_access_identity #=> String
- # resp.streaming_distribution_config.aliases.quantity #=> Integer
- # resp.streaming_distribution_config.aliases.items #=> Array
- # resp.streaming_distribution_config.aliases.items[0] #=> String
- # resp.streaming_distribution_config.comment #=> String
- # resp.streaming_distribution_config.logging.enabled #=> Boolean
- # resp.streaming_distribution_config.logging.bucket #=> String
- # resp.streaming_distribution_config.logging.prefix #=> String
- # resp.streaming_distribution_config.trusted_signers.enabled #=> Boolean
- # resp.streaming_distribution_config.trusted_signers.quantity #=> Integer
- # resp.streaming_distribution_config.trusted_signers.items #=> Array
- # resp.streaming_distribution_config.trusted_signers.items[0] #=> String
- # resp.streaming_distribution_config.price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
- # resp.streaming_distribution_config.enabled #=> Boolean
- # resp.etag #=> String
- # @overload get_streaming_distribution_config(params = {})
- # @param [Hash] params ({})
- def get_streaming_distribution_config(params = {}, options = {})
- req = build_request(:get_streaming_distribution_config, params)
- req.send_request(options)
- end
+ # Get the configuration information about a streaming distribution.
+ #
+ # @option params [required, String] :id
+ # The streaming distribution's ID.
+ #
+ # @return [Types::GetStreamingDistributionConfigResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::GetStreamingDistributionConfigResult#streaming_distribution_config #streaming_distribution_config} => Types::StreamingDistributionConfig
+ # * {Types::GetStreamingDistributionConfigResult#etag #etag} => String
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.get_streaming_distribution_config({
+ # id: "string", # required
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.streaming_distribution_config.caller_reference #=> String
+ # resp.streaming_distribution_config.s3_origin.domain_name #=> String
+ # resp.streaming_distribution_config.s3_origin.origin_access_identity #=> String
+ # resp.streaming_distribution_config.aliases.quantity #=> Integer
+ # resp.streaming_distribution_config.aliases.items #=> Array
+ # resp.streaming_distribution_config.aliases.items[0] #=> String
+ # resp.streaming_distribution_config.comment #=> String
+ # resp.streaming_distribution_config.logging.enabled #=> Boolean
+ # resp.streaming_distribution_config.logging.bucket #=> String
+ # resp.streaming_distribution_config.logging.prefix #=> String
+ # resp.streaming_distribution_config.trusted_signers.enabled #=> Boolean
+ # resp.streaming_distribution_config.trusted_signers.quantity #=> Integer
+ # resp.streaming_distribution_config.trusted_signers.items #=> Array
+ # resp.streaming_distribution_config.trusted_signers.items[0] #=> String
+ # resp.streaming_distribution_config.price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
+ # resp.streaming_distribution_config.enabled #=> Boolean
+ # resp.etag #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/GetStreamingDistributionConfig2017_03_25 AWS API Documentation
+ #
+ # @overload get_streaming_distribution_config(params = {})
+ # @param [Hash] params ({})
+ def get_streaming_distribution_config(params = {}, options = {})
+ req = build_request(:get_streaming_distribution_config, params)
+ req.send_request(options)
+ end
- # Lists origin access identities.
- # @option params [String] :marker
- # Use this when paginating results to indicate where to begin in your
- # list of origin access identities. The results include identities in
- # the list that occur after the marker. To get the next page of results,
- # set the `Marker` to the value of the `NextMarker` from the current
- # page's response (which is also the ID of the last identity on that
- # page).
- # @option params [Integer] :max_items
- # The maximum number of origin access identities you want in the
- # response body.
- # @return [Types::ListCloudFrontOriginAccessIdentitiesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::ListCloudFrontOriginAccessIdentitiesResult#cloud_front_origin_access_identity_list #CloudFrontOriginAccessIdentityList} => Types::CloudFrontOriginAccessIdentityList
- #
- # @example Request syntax with placeholder values
- # resp = client.list_cloud_front_origin_access_identities({
- # marker: "string",
- # max_items: 1,
- # })
- #
- # @example Response structure
- # resp.cloud_front_origin_access_identity_list.marker #=> String
- # resp.cloud_front_origin_access_identity_list.next_marker #=> String
- # resp.cloud_front_origin_access_identity_list.max_items #=> Integer
- # resp.cloud_front_origin_access_identity_list.is_truncated #=> Boolean
- # resp.cloud_front_origin_access_identity_list.quantity #=> Integer
- # resp.cloud_front_origin_access_identity_list.items #=> Array
- # resp.cloud_front_origin_access_identity_list.items[0].id #=> String
- # resp.cloud_front_origin_access_identity_list.items[0].s3_canonical_user_id #=> String
- # resp.cloud_front_origin_access_identity_list.items[0].comment #=> String
- # @overload list_cloud_front_origin_access_identities(params = {})
- # @param [Hash] params ({})
- def list_cloud_front_origin_access_identities(params = {}, options = {})
- req = build_request(:list_cloud_front_origin_access_identities, params)
- req.send_request(options)
- end
+ # Lists origin access identities.
+ #
+ # @option params [String] :marker
+ # Use this when paginating results to indicate where to begin in your
+ # list of origin access identities. The results include identities in
+ # the list that occur after the marker. To get the next page of results,
+ # set the `Marker` to the value of the `NextMarker` from the current
+ # page's response (which is also the ID of the last identity on that
+ # page).
+ #
+ # @option params [Integer] :max_items
+ # The maximum number of origin access identities you want in the
+ # response body.
+ #
+ # @return [Types::ListCloudFrontOriginAccessIdentitiesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::ListCloudFrontOriginAccessIdentitiesResult#cloud_front_origin_access_identity_list #cloud_front_origin_access_identity_list} => Types::CloudFrontOriginAccessIdentityList
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.list_cloud_front_origin_access_identities({
+ # marker: "string",
+ # max_items: 1,
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.cloud_front_origin_access_identity_list.marker #=> String
+ # resp.cloud_front_origin_access_identity_list.next_marker #=> String
+ # resp.cloud_front_origin_access_identity_list.max_items #=> Integer
+ # resp.cloud_front_origin_access_identity_list.is_truncated #=> Boolean
+ # resp.cloud_front_origin_access_identity_list.quantity #=> Integer
+ # resp.cloud_front_origin_access_identity_list.items #=> Array
+ # resp.cloud_front_origin_access_identity_list.items[0].id #=> String
+ # resp.cloud_front_origin_access_identity_list.items[0].s3_canonical_user_id #=> String
+ # resp.cloud_front_origin_access_identity_list.items[0].comment #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListCloudFrontOriginAccessIdentities2017_03_25 AWS API Documentation
+ #
+ # @overload list_cloud_front_origin_access_identities(params = {})
+ # @param [Hash] params ({})
+ def list_cloud_front_origin_access_identities(params = {}, options = {})
+ req = build_request(:list_cloud_front_origin_access_identities, params)
+ req.send_request(options)
+ end
- # List distributions.
- # @option params [String] :marker
- # Use this when paginating results to indicate where to begin in your
- # list of distributions. The results include distributions in the list
- # that occur after the marker. To get the next page of results, set the
- # `Marker` to the value of the `NextMarker` from the current page's
- # response (which is also the ID of the last distribution on that page).
- # @option params [Integer] :max_items
- # The maximum number of distributions you want in the response body.
- # @return [Types::ListDistributionsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::ListDistributionsResult#distribution_list #DistributionList} => Types::DistributionList
- #
- # @example Request syntax with placeholder values
- # resp = client.list_distributions({
- # marker: "string",
- # max_items: 1,
- # })
- #
- # @example Response structure
- # resp.distribution_list.marker #=> String
- # resp.distribution_list.next_marker #=> String
- # resp.distribution_list.max_items #=> Integer
- # resp.distribution_list.is_truncated #=> Boolean
- # resp.distribution_list.quantity #=> Integer
- # resp.distribution_list.items #=> Array
- # resp.distribution_list.items[0].id #=> String
- # resp.distribution_list.items[0].arn #=> String
- # resp.distribution_list.items[0].status #=> String
- # resp.distribution_list.items[0].last_modified_time #=> Time
- # resp.distribution_list.items[0].domain_name #=> String
- # resp.distribution_list.items[0].aliases.quantity #=> Integer
- # resp.distribution_list.items[0].aliases.items #=> Array
- # resp.distribution_list.items[0].aliases.items[0] #=> String
- # resp.distribution_list.items[0].origins.quantity #=> Integer
- # resp.distribution_list.items[0].origins.items #=> Array
- # resp.distribution_list.items[0].origins.items[0].id #=> String
- # resp.distribution_list.items[0].origins.items[0].domain_name #=> String
- # resp.distribution_list.items[0].origins.items[0].origin_path #=> String
- # resp.distribution_list.items[0].origins.items[0].custom_headers.quantity #=> Integer
- # resp.distribution_list.items[0].origins.items[0].custom_headers.items #=> Array
- # resp.distribution_list.items[0].origins.items[0].custom_headers.items[0].header_name #=> String
- # resp.distribution_list.items[0].origins.items[0].custom_headers.items[0].header_value #=> String
- # resp.distribution_list.items[0].origins.items[0].s3_origin_config.origin_access_identity #=> String
- # resp.distribution_list.items[0].origins.items[0].custom_origin_config.http_port #=> Integer
- # resp.distribution_list.items[0].origins.items[0].custom_origin_config.https_port #=> Integer
- # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_protocol_policy #=> String, one of "http-only", "match-viewer", "https-only"
- # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_ssl_protocols.quantity #=> Integer
- # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_ssl_protocols.items #=> Array
- # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_ssl_protocols.items[0] #=> String, one of "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2"
- # resp.distribution_list.items[0].default_cache_behavior.target_origin_id #=> String
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string #=> Boolean
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.items #=> Array
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.items[0] #=> String
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.headers.quantity #=> Integer
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.headers.items #=> Array
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.headers.items[0] #=> String
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string_cache_keys.quantity #=> Integer
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string_cache_keys.items #=> Array
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string_cache_keys.items[0] #=> String
- # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.enabled #=> Boolean
- # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.quantity #=> Integer
- # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items #=> Array
- # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items[0] #=> String
- # resp.distribution_list.items[0].default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
- # resp.distribution_list.items[0].default_cache_behavior.min_ttl #=> Integer
- # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.quantity #=> Integer
- # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items #=> Array
- # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer
- # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.items #=> Array
- # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution_list.items[0].default_cache_behavior.smooth_streaming #=> Boolean
- # resp.distribution_list.items[0].default_cache_behavior.default_ttl #=> Integer
- # resp.distribution_list.items[0].default_cache_behavior.max_ttl #=> Integer
- # resp.distribution_list.items[0].default_cache_behavior.compress #=> Boolean
- # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.quantity #=> Integer
- # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items #=> Array
- # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items[0].lambda_function_arn #=> String
- # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
- # resp.distribution_list.items[0].cache_behaviors.quantity #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items #=> Array
- # resp.distribution_list.items[0].cache_behaviors.items[0].path_pattern #=> String
- # resp.distribution_list.items[0].cache_behaviors.items[0].target_origin_id #=> String
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items #=> Array
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items[0] #=> String
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.headers.quantity #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.headers.items #=> Array
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.headers.items[0] #=> String
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string_cache_keys.quantity #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items #=> Array
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items[0] #=> String
- # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.enabled #=> Boolean
- # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.quantity #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items #=> Array
- # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items[0] #=> String
- # resp.distribution_list.items[0].cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
- # resp.distribution_list.items[0].cache_behaviors.items[0].min_ttl #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.quantity #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items #=> Array
- # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.items #=> Array
- # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution_list.items[0].cache_behaviors.items[0].smooth_streaming #=> Boolean
- # resp.distribution_list.items[0].cache_behaviors.items[0].default_ttl #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items[0].max_ttl #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items[0].compress #=> Boolean
- # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.quantity #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items #=> Array
- # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items[0].lambda_function_arn #=> String
- # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
- # resp.distribution_list.items[0].custom_error_responses.quantity #=> Integer
- # resp.distribution_list.items[0].custom_error_responses.items #=> Array
- # resp.distribution_list.items[0].custom_error_responses.items[0].error_code #=> Integer
- # resp.distribution_list.items[0].custom_error_responses.items[0].response_page_path #=> String
- # resp.distribution_list.items[0].custom_error_responses.items[0].response_code #=> String
- # resp.distribution_list.items[0].custom_error_responses.items[0].error_caching_min_ttl #=> Integer
- # resp.distribution_list.items[0].comment #=> String
- # resp.distribution_list.items[0].price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
- # resp.distribution_list.items[0].enabled #=> Boolean
- # resp.distribution_list.items[0].viewer_certificate.cloud_front_default_certificate #=> Boolean
- # resp.distribution_list.items[0].viewer_certificate.iam_certificate_id #=> String
- # resp.distribution_list.items[0].viewer_certificate.acm_certificate_arn #=> String
- # resp.distribution_list.items[0].viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip"
- # resp.distribution_list.items[0].viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1"
- # resp.distribution_list.items[0].viewer_certificate.certificate #=> String
- # resp.distribution_list.items[0].viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
- # resp.distribution_list.items[0].restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
- # resp.distribution_list.items[0].restrictions.geo_restriction.quantity #=> Integer
- # resp.distribution_list.items[0].restrictions.geo_restriction.items #=> Array
- # resp.distribution_list.items[0].restrictions.geo_restriction.items[0] #=> String
- # resp.distribution_list.items[0].web_acl_id #=> String
- # resp.distribution_list.items[0].http_version #=> String, one of "http1.1", "http2"
- # resp.distribution_list.items[0].is_ipv6_enabled #=> Boolean
- # @overload list_distributions(params = {})
- # @param [Hash] params ({})
- def list_distributions(params = {}, options = {})
- req = build_request(:list_distributions, params)
- req.send_request(options)
- end
+ # List distributions.
+ #
+ # @option params [String] :marker
+ # Use this when paginating results to indicate where to begin in your
+ # list of distributions. The results include distributions in the list
+ # that occur after the marker. To get the next page of results, set the
+ # `Marker` to the value of the `NextMarker` from the current page's
+ # response (which is also the ID of the last distribution on that page).
+ #
+ # @option params [Integer] :max_items
+ # The maximum number of distributions you want in the response body.
+ #
+ # @return [Types::ListDistributionsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::ListDistributionsResult#distribution_list #distribution_list} => Types::DistributionList
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.list_distributions({
+ # marker: "string",
+ # max_items: 1,
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.distribution_list.marker #=> String
+ # resp.distribution_list.next_marker #=> String
+ # resp.distribution_list.max_items #=> Integer
+ # resp.distribution_list.is_truncated #=> Boolean
+ # resp.distribution_list.quantity #=> Integer
+ # resp.distribution_list.items #=> Array
+ # resp.distribution_list.items[0].id #=> String
+ # resp.distribution_list.items[0].arn #=> String
+ # resp.distribution_list.items[0].status #=> String
+ # resp.distribution_list.items[0].last_modified_time #=> Time
+ # resp.distribution_list.items[0].domain_name #=> String
+ # resp.distribution_list.items[0].aliases.quantity #=> Integer
+ # resp.distribution_list.items[0].aliases.items #=> Array
+ # resp.distribution_list.items[0].aliases.items[0] #=> String
+ # resp.distribution_list.items[0].origins.quantity #=> Integer
+ # resp.distribution_list.items[0].origins.items #=> Array
+ # resp.distribution_list.items[0].origins.items[0].id #=> String
+ # resp.distribution_list.items[0].origins.items[0].domain_name #=> String
+ # resp.distribution_list.items[0].origins.items[0].origin_path #=> String
+ # resp.distribution_list.items[0].origins.items[0].custom_headers.quantity #=> Integer
+ # resp.distribution_list.items[0].origins.items[0].custom_headers.items #=> Array
+ # resp.distribution_list.items[0].origins.items[0].custom_headers.items[0].header_name #=> String
+ # resp.distribution_list.items[0].origins.items[0].custom_headers.items[0].header_value #=> String
+ # resp.distribution_list.items[0].origins.items[0].s3_origin_config.origin_access_identity #=> String
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.http_port #=> Integer
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.https_port #=> Integer
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_protocol_policy #=> String, one of "http-only", "match-viewer", "https-only"
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_ssl_protocols.quantity #=> Integer
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_ssl_protocols.items #=> Array
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_ssl_protocols.items[0] #=> String, one of "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2"
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_read_timeout #=> Integer
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.target_origin_id #=> String
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string #=> Boolean
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.items #=> Array
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.items[0] #=> String
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.headers.quantity #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.headers.items #=> Array
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.headers.items[0] #=> String
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string_cache_keys.quantity #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string_cache_keys.items #=> Array
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string_cache_keys.items[0] #=> String
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.enabled #=> Boolean
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.quantity #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items #=> Array
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items[0] #=> String
+ # resp.distribution_list.items[0].default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
+ # resp.distribution_list.items[0].default_cache_behavior.min_ttl #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.quantity #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items #=> Array
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.items #=> Array
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution_list.items[0].default_cache_behavior.smooth_streaming #=> Boolean
+ # resp.distribution_list.items[0].default_cache_behavior.default_ttl #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.max_ttl #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.compress #=> Boolean
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.quantity #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items #=> Array
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items[0].lambda_function_arn #=> String
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
+ # resp.distribution_list.items[0].cache_behaviors.quantity #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items #=> Array
+ # resp.distribution_list.items[0].cache_behaviors.items[0].path_pattern #=> String
+ # resp.distribution_list.items[0].cache_behaviors.items[0].target_origin_id #=> String
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items #=> Array
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items[0] #=> String
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.headers.quantity #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.headers.items #=> Array
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.headers.items[0] #=> String
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string_cache_keys.quantity #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items #=> Array
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items[0] #=> String
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.enabled #=> Boolean
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.quantity #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items #=> Array
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items[0] #=> String
+ # resp.distribution_list.items[0].cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
+ # resp.distribution_list.items[0].cache_behaviors.items[0].min_ttl #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.quantity #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items #=> Array
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.items #=> Array
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution_list.items[0].cache_behaviors.items[0].smooth_streaming #=> Boolean
+ # resp.distribution_list.items[0].cache_behaviors.items[0].default_ttl #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items[0].max_ttl #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items[0].compress #=> Boolean
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.quantity #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items #=> Array
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items[0].lambda_function_arn #=> String
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
+ # resp.distribution_list.items[0].custom_error_responses.quantity #=> Integer
+ # resp.distribution_list.items[0].custom_error_responses.items #=> Array
+ # resp.distribution_list.items[0].custom_error_responses.items[0].error_code #=> Integer
+ # resp.distribution_list.items[0].custom_error_responses.items[0].response_page_path #=> String
+ # resp.distribution_list.items[0].custom_error_responses.items[0].response_code #=> String
+ # resp.distribution_list.items[0].custom_error_responses.items[0].error_caching_min_ttl #=> Integer
+ # resp.distribution_list.items[0].comment #=> String
+ # resp.distribution_list.items[0].price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
+ # resp.distribution_list.items[0].enabled #=> Boolean
+ # resp.distribution_list.items[0].viewer_certificate.cloud_front_default_certificate #=> Boolean
+ # resp.distribution_list.items[0].viewer_certificate.iam_certificate_id #=> String
+ # resp.distribution_list.items[0].viewer_certificate.acm_certificate_arn #=> String
+ # resp.distribution_list.items[0].viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip"
+ # resp.distribution_list.items[0].viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1"
+ # resp.distribution_list.items[0].viewer_certificate.certificate #=> String
+ # resp.distribution_list.items[0].viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
+ # resp.distribution_list.items[0].restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
+ # resp.distribution_list.items[0].restrictions.geo_restriction.quantity #=> Integer
+ # resp.distribution_list.items[0].restrictions.geo_restriction.items #=> Array
+ # resp.distribution_list.items[0].restrictions.geo_restriction.items[0] #=> String
+ # resp.distribution_list.items[0].web_acl_id #=> String
+ # resp.distribution_list.items[0].http_version #=> String, one of "http1.1", "http2"
+ # resp.distribution_list.items[0].is_ipv6_enabled #=> Boolean
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListDistributions2017_03_25 AWS API Documentation
+ #
+ # @overload list_distributions(params = {})
+ # @param [Hash] params ({})
+ def list_distributions(params = {}, options = {})
+ req = build_request(:list_distributions, params)
+ req.send_request(options)
+ end
- # List the distributions that are associated with a specified AWS WAF
- # web ACL.
- # @option params [String] :marker
- # Use `Marker` and `MaxItems` to control pagination of results. If you
- # have more than `MaxItems` distributions that satisfy the request, the
- # response includes a `NextMarker` element. To get the next page of
- # results, submit another request. For the value of `Marker`, specify
- # the value of `NextMarker` from the last response. (For the first
- # request, omit `Marker`.)
- # @option params [Integer] :max_items
- # The maximum number of distributions that you want CloudFront to return
- # in the response body. The maximum and default values are both 100.
- # @option params [required, String] :web_acl_id
- # The ID of the AWS WAF web ACL that you want to list the associated
- # distributions. If you specify "null" for the ID, the request returns
- # a list of the distributions that aren't associated with a web ACL.
- # @return [Types::ListDistributionsByWebACLIdResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::ListDistributionsByWebACLIdResult#distribution_list #DistributionList} => Types::DistributionList
- #
- # @example Request syntax with placeholder values
- # resp = client.list_distributions_by_web_acl_id({
- # marker: "string",
- # max_items: 1,
- # web_acl_id: "string", # required
- # })
- #
- # @example Response structure
- # resp.distribution_list.marker #=> String
- # resp.distribution_list.next_marker #=> String
- # resp.distribution_list.max_items #=> Integer
- # resp.distribution_list.is_truncated #=> Boolean
- # resp.distribution_list.quantity #=> Integer
- # resp.distribution_list.items #=> Array
- # resp.distribution_list.items[0].id #=> String
- # resp.distribution_list.items[0].arn #=> String
- # resp.distribution_list.items[0].status #=> String
- # resp.distribution_list.items[0].last_modified_time #=> Time
- # resp.distribution_list.items[0].domain_name #=> String
- # resp.distribution_list.items[0].aliases.quantity #=> Integer
- # resp.distribution_list.items[0].aliases.items #=> Array
- # resp.distribution_list.items[0].aliases.items[0] #=> String
- # resp.distribution_list.items[0].origins.quantity #=> Integer
- # resp.distribution_list.items[0].origins.items #=> Array
- # resp.distribution_list.items[0].origins.items[0].id #=> String
- # resp.distribution_list.items[0].origins.items[0].domain_name #=> String
- # resp.distribution_list.items[0].origins.items[0].origin_path #=> String
- # resp.distribution_list.items[0].origins.items[0].custom_headers.quantity #=> Integer
- # resp.distribution_list.items[0].origins.items[0].custom_headers.items #=> Array
- # resp.distribution_list.items[0].origins.items[0].custom_headers.items[0].header_name #=> String
- # resp.distribution_list.items[0].origins.items[0].custom_headers.items[0].header_value #=> String
- # resp.distribution_list.items[0].origins.items[0].s3_origin_config.origin_access_identity #=> String
- # resp.distribution_list.items[0].origins.items[0].custom_origin_config.http_port #=> Integer
- # resp.distribution_list.items[0].origins.items[0].custom_origin_config.https_port #=> Integer
- # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_protocol_policy #=> String, one of "http-only", "match-viewer", "https-only"
- # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_ssl_protocols.quantity #=> Integer
- # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_ssl_protocols.items #=> Array
- # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_ssl_protocols.items[0] #=> String, one of "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2"
- # resp.distribution_list.items[0].default_cache_behavior.target_origin_id #=> String
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string #=> Boolean
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.items #=> Array
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.items[0] #=> String
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.headers.quantity #=> Integer
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.headers.items #=> Array
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.headers.items[0] #=> String
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string_cache_keys.quantity #=> Integer
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string_cache_keys.items #=> Array
- # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string_cache_keys.items[0] #=> String
- # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.enabled #=> Boolean
- # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.quantity #=> Integer
- # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items #=> Array
- # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items[0] #=> String
- # resp.distribution_list.items[0].default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
- # resp.distribution_list.items[0].default_cache_behavior.min_ttl #=> Integer
- # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.quantity #=> Integer
- # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items #=> Array
- # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer
- # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.items #=> Array
- # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution_list.items[0].default_cache_behavior.smooth_streaming #=> Boolean
- # resp.distribution_list.items[0].default_cache_behavior.default_ttl #=> Integer
- # resp.distribution_list.items[0].default_cache_behavior.max_ttl #=> Integer
- # resp.distribution_list.items[0].default_cache_behavior.compress #=> Boolean
- # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.quantity #=> Integer
- # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items #=> Array
- # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items[0].lambda_function_arn #=> String
- # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
- # resp.distribution_list.items[0].cache_behaviors.quantity #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items #=> Array
- # resp.distribution_list.items[0].cache_behaviors.items[0].path_pattern #=> String
- # resp.distribution_list.items[0].cache_behaviors.items[0].target_origin_id #=> String
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items #=> Array
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items[0] #=> String
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.headers.quantity #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.headers.items #=> Array
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.headers.items[0] #=> String
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string_cache_keys.quantity #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items #=> Array
- # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items[0] #=> String
- # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.enabled #=> Boolean
- # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.quantity #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items #=> Array
- # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items[0] #=> String
- # resp.distribution_list.items[0].cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
- # resp.distribution_list.items[0].cache_behaviors.items[0].min_ttl #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.quantity #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items #=> Array
- # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.items #=> Array
- # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution_list.items[0].cache_behaviors.items[0].smooth_streaming #=> Boolean
- # resp.distribution_list.items[0].cache_behaviors.items[0].default_ttl #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items[0].max_ttl #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items[0].compress #=> Boolean
- # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.quantity #=> Integer
- # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items #=> Array
- # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items[0].lambda_function_arn #=> String
- # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
- # resp.distribution_list.items[0].custom_error_responses.quantity #=> Integer
- # resp.distribution_list.items[0].custom_error_responses.items #=> Array
- # resp.distribution_list.items[0].custom_error_responses.items[0].error_code #=> Integer
- # resp.distribution_list.items[0].custom_error_responses.items[0].response_page_path #=> String
- # resp.distribution_list.items[0].custom_error_responses.items[0].response_code #=> String
- # resp.distribution_list.items[0].custom_error_responses.items[0].error_caching_min_ttl #=> Integer
- # resp.distribution_list.items[0].comment #=> String
- # resp.distribution_list.items[0].price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
- # resp.distribution_list.items[0].enabled #=> Boolean
- # resp.distribution_list.items[0].viewer_certificate.cloud_front_default_certificate #=> Boolean
- # resp.distribution_list.items[0].viewer_certificate.iam_certificate_id #=> String
- # resp.distribution_list.items[0].viewer_certificate.acm_certificate_arn #=> String
- # resp.distribution_list.items[0].viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip"
- # resp.distribution_list.items[0].viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1"
- # resp.distribution_list.items[0].viewer_certificate.certificate #=> String
- # resp.distribution_list.items[0].viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
- # resp.distribution_list.items[0].restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
- # resp.distribution_list.items[0].restrictions.geo_restriction.quantity #=> Integer
- # resp.distribution_list.items[0].restrictions.geo_restriction.items #=> Array
- # resp.distribution_list.items[0].restrictions.geo_restriction.items[0] #=> String
- # resp.distribution_list.items[0].web_acl_id #=> String
- # resp.distribution_list.items[0].http_version #=> String, one of "http1.1", "http2"
- # resp.distribution_list.items[0].is_ipv6_enabled #=> Boolean
- # @overload list_distributions_by_web_acl_id(params = {})
- # @param [Hash] params ({})
- def list_distributions_by_web_acl_id(params = {}, options = {})
- req = build_request(:list_distributions_by_web_acl_id, params)
- req.send_request(options)
- end
+ # List the distributions that are associated with a specified AWS WAF
+ # web ACL.
+ #
+ # @option params [String] :marker
+ # Use `Marker` and `MaxItems` to control pagination of results. If you
+ # have more than `MaxItems` distributions that satisfy the request, the
+ # response includes a `NextMarker` element. To get the next page of
+ # results, submit another request. For the value of `Marker`, specify
+ # the value of `NextMarker` from the last response. (For the first
+ # request, omit `Marker`.)
+ #
+ # @option params [Integer] :max_items
+ # The maximum number of distributions that you want CloudFront to return
+ # in the response body. The maximum and default values are both 100.
+ #
+ # @option params [required, String] :web_acl_id
+ # The ID of the AWS WAF web ACL that you want to list the associated
+ # distributions. If you specify "null" for the ID, the request returns
+ # a list of the distributions that aren't associated with a web ACL.
+ #
+ # @return [Types::ListDistributionsByWebACLIdResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::ListDistributionsByWebACLIdResult#distribution_list #distribution_list} => Types::DistributionList
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.list_distributions_by_web_acl_id({
+ # marker: "string",
+ # max_items: 1,
+ # web_acl_id: "string", # required
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.distribution_list.marker #=> String
+ # resp.distribution_list.next_marker #=> String
+ # resp.distribution_list.max_items #=> Integer
+ # resp.distribution_list.is_truncated #=> Boolean
+ # resp.distribution_list.quantity #=> Integer
+ # resp.distribution_list.items #=> Array
+ # resp.distribution_list.items[0].id #=> String
+ # resp.distribution_list.items[0].arn #=> String
+ # resp.distribution_list.items[0].status #=> String
+ # resp.distribution_list.items[0].last_modified_time #=> Time
+ # resp.distribution_list.items[0].domain_name #=> String
+ # resp.distribution_list.items[0].aliases.quantity #=> Integer
+ # resp.distribution_list.items[0].aliases.items #=> Array
+ # resp.distribution_list.items[0].aliases.items[0] #=> String
+ # resp.distribution_list.items[0].origins.quantity #=> Integer
+ # resp.distribution_list.items[0].origins.items #=> Array
+ # resp.distribution_list.items[0].origins.items[0].id #=> String
+ # resp.distribution_list.items[0].origins.items[0].domain_name #=> String
+ # resp.distribution_list.items[0].origins.items[0].origin_path #=> String
+ # resp.distribution_list.items[0].origins.items[0].custom_headers.quantity #=> Integer
+ # resp.distribution_list.items[0].origins.items[0].custom_headers.items #=> Array
+ # resp.distribution_list.items[0].origins.items[0].custom_headers.items[0].header_name #=> String
+ # resp.distribution_list.items[0].origins.items[0].custom_headers.items[0].header_value #=> String
+ # resp.distribution_list.items[0].origins.items[0].s3_origin_config.origin_access_identity #=> String
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.http_port #=> Integer
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.https_port #=> Integer
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_protocol_policy #=> String, one of "http-only", "match-viewer", "https-only"
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_ssl_protocols.quantity #=> Integer
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_ssl_protocols.items #=> Array
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_ssl_protocols.items[0] #=> String, one of "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2"
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_read_timeout #=> Integer
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.target_origin_id #=> String
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string #=> Boolean
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.items #=> Array
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.items[0] #=> String
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.headers.quantity #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.headers.items #=> Array
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.headers.items[0] #=> String
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string_cache_keys.quantity #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string_cache_keys.items #=> Array
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string_cache_keys.items[0] #=> String
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.enabled #=> Boolean
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.quantity #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items #=> Array
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items[0] #=> String
+ # resp.distribution_list.items[0].default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
+ # resp.distribution_list.items[0].default_cache_behavior.min_ttl #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.quantity #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items #=> Array
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.items #=> Array
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution_list.items[0].default_cache_behavior.smooth_streaming #=> Boolean
+ # resp.distribution_list.items[0].default_cache_behavior.default_ttl #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.max_ttl #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.compress #=> Boolean
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.quantity #=> Integer
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items #=> Array
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items[0].lambda_function_arn #=> String
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
+ # resp.distribution_list.items[0].cache_behaviors.quantity #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items #=> Array
+ # resp.distribution_list.items[0].cache_behaviors.items[0].path_pattern #=> String
+ # resp.distribution_list.items[0].cache_behaviors.items[0].target_origin_id #=> String
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items #=> Array
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items[0] #=> String
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.headers.quantity #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.headers.items #=> Array
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.headers.items[0] #=> String
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string_cache_keys.quantity #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items #=> Array
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items[0] #=> String
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.enabled #=> Boolean
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.quantity #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items #=> Array
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items[0] #=> String
+ # resp.distribution_list.items[0].cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
+ # resp.distribution_list.items[0].cache_behaviors.items[0].min_ttl #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.quantity #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items #=> Array
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.items #=> Array
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution_list.items[0].cache_behaviors.items[0].smooth_streaming #=> Boolean
+ # resp.distribution_list.items[0].cache_behaviors.items[0].default_ttl #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items[0].max_ttl #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items[0].compress #=> Boolean
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.quantity #=> Integer
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items #=> Array
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items[0].lambda_function_arn #=> String
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
+ # resp.distribution_list.items[0].custom_error_responses.quantity #=> Integer
+ # resp.distribution_list.items[0].custom_error_responses.items #=> Array
+ # resp.distribution_list.items[0].custom_error_responses.items[0].error_code #=> Integer
+ # resp.distribution_list.items[0].custom_error_responses.items[0].response_page_path #=> String
+ # resp.distribution_list.items[0].custom_error_responses.items[0].response_code #=> String
+ # resp.distribution_list.items[0].custom_error_responses.items[0].error_caching_min_ttl #=> Integer
+ # resp.distribution_list.items[0].comment #=> String
+ # resp.distribution_list.items[0].price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
+ # resp.distribution_list.items[0].enabled #=> Boolean
+ # resp.distribution_list.items[0].viewer_certificate.cloud_front_default_certificate #=> Boolean
+ # resp.distribution_list.items[0].viewer_certificate.iam_certificate_id #=> String
+ # resp.distribution_list.items[0].viewer_certificate.acm_certificate_arn #=> String
+ # resp.distribution_list.items[0].viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip"
+ # resp.distribution_list.items[0].viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1"
+ # resp.distribution_list.items[0].viewer_certificate.certificate #=> String
+ # resp.distribution_list.items[0].viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
+ # resp.distribution_list.items[0].restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
+ # resp.distribution_list.items[0].restrictions.geo_restriction.quantity #=> Integer
+ # resp.distribution_list.items[0].restrictions.geo_restriction.items #=> Array
+ # resp.distribution_list.items[0].restrictions.geo_restriction.items[0] #=> String
+ # resp.distribution_list.items[0].web_acl_id #=> String
+ # resp.distribution_list.items[0].http_version #=> String, one of "http1.1", "http2"
+ # resp.distribution_list.items[0].is_ipv6_enabled #=> Boolean
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListDistributionsByWebACLId2017_03_25 AWS API Documentation
+ #
+ # @overload list_distributions_by_web_acl_id(params = {})
+ # @param [Hash] params ({})
+ def list_distributions_by_web_acl_id(params = {}, options = {})
+ req = build_request(:list_distributions_by_web_acl_id, params)
+ req.send_request(options)
+ end
- # Lists invalidation batches.
- # @option params [required, String] :distribution_id
- # The distribution's ID.
- # @option params [String] :marker
- # Use this parameter when paginating results to indicate where to begin
- # in your list of invalidation batches. Because the results are returned
- # in decreasing order from most recent to oldest, the most recent
- # results are on the first page, the second page will contain earlier
- # results, and so on. To get the next page of results, set `Marker` to
- # the value of the `NextMarker` from the current page's response. This
- # value is the same as the ID of the last invalidation batch on that
- # page.
- # @option params [Integer] :max_items
- # The maximum number of invalidation batches that you want in the
- # response body.
- # @return [Types::ListInvalidationsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::ListInvalidationsResult#invalidation_list #InvalidationList} => Types::InvalidationList
- #
- # @example Request syntax with placeholder values
- # resp = client.list_invalidations({
- # distribution_id: "string", # required
- # marker: "string",
- # max_items: 1,
- # })
- #
- # @example Response structure
- # resp.invalidation_list.marker #=> String
- # resp.invalidation_list.next_marker #=> String
- # resp.invalidation_list.max_items #=> Integer
- # resp.invalidation_list.is_truncated #=> Boolean
- # resp.invalidation_list.quantity #=> Integer
- # resp.invalidation_list.items #=> Array
- # resp.invalidation_list.items[0].id #=> String
- # resp.invalidation_list.items[0].create_time #=> Time
- # resp.invalidation_list.items[0].status #=> String
- # @overload list_invalidations(params = {})
- # @param [Hash] params ({})
- def list_invalidations(params = {}, options = {})
- req = build_request(:list_invalidations, params)
- req.send_request(options)
- end
+ # Lists invalidation batches.
+ #
+ # @option params [required, String] :distribution_id
+ # The distribution's ID.
+ #
+ # @option params [String] :marker
+ # Use this parameter when paginating results to indicate where to begin
+ # in your list of invalidation batches. Because the results are returned
+ # in decreasing order from most recent to oldest, the most recent
+ # results are on the first page, the second page will contain earlier
+ # results, and so on. To get the next page of results, set `Marker` to
+ # the value of the `NextMarker` from the current page's response. This
+ # value is the same as the ID of the last invalidation batch on that
+ # page.
+ #
+ # @option params [Integer] :max_items
+ # The maximum number of invalidation batches that you want in the
+ # response body.
+ #
+ # @return [Types::ListInvalidationsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::ListInvalidationsResult#invalidation_list #invalidation_list} => Types::InvalidationList
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.list_invalidations({
+ # distribution_id: "string", # required
+ # marker: "string",
+ # max_items: 1,
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.invalidation_list.marker #=> String
+ # resp.invalidation_list.next_marker #=> String
+ # resp.invalidation_list.max_items #=> Integer
+ # resp.invalidation_list.is_truncated #=> Boolean
+ # resp.invalidation_list.quantity #=> Integer
+ # resp.invalidation_list.items #=> Array
+ # resp.invalidation_list.items[0].id #=> String
+ # resp.invalidation_list.items[0].create_time #=> Time
+ # resp.invalidation_list.items[0].status #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListInvalidations2017_03_25 AWS API Documentation
+ #
+ # @overload list_invalidations(params = {})
+ # @param [Hash] params ({})
+ def list_invalidations(params = {}, options = {})
+ req = build_request(:list_invalidations, params)
+ req.send_request(options)
+ end
- # List streaming distributions.
- # @option params [String] :marker
- # The value that you provided for the `Marker` request parameter.
- # @option params [Integer] :max_items
- # The value that you provided for the `MaxItems` request parameter.
- # @return [Types::ListStreamingDistributionsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::ListStreamingDistributionsResult#streaming_distribution_list #StreamingDistributionList} => Types::StreamingDistributionList
- #
- # @example Request syntax with placeholder values
- # resp = client.list_streaming_distributions({
- # marker: "string",
- # max_items: 1,
- # })
- #
- # @example Response structure
- # resp.streaming_distribution_list.marker #=> String
- # resp.streaming_distribution_list.next_marker #=> String
- # resp.streaming_distribution_list.max_items #=> Integer
- # resp.streaming_distribution_list.is_truncated #=> Boolean
- # resp.streaming_distribution_list.quantity #=> Integer
- # resp.streaming_distribution_list.items #=> Array
- # resp.streaming_distribution_list.items[0].id #=> String
- # resp.streaming_distribution_list.items[0].arn #=> String
- # resp.streaming_distribution_list.items[0].status #=> String
- # resp.streaming_distribution_list.items[0].last_modified_time #=> Time
- # resp.streaming_distribution_list.items[0].domain_name #=> String
- # resp.streaming_distribution_list.items[0].s3_origin.domain_name #=> String
- # resp.streaming_distribution_list.items[0].s3_origin.origin_access_identity #=> String
- # resp.streaming_distribution_list.items[0].aliases.quantity #=> Integer
- # resp.streaming_distribution_list.items[0].aliases.items #=> Array
- # resp.streaming_distribution_list.items[0].aliases.items[0] #=> String
- # resp.streaming_distribution_list.items[0].trusted_signers.enabled #=> Boolean
- # resp.streaming_distribution_list.items[0].trusted_signers.quantity #=> Integer
- # resp.streaming_distribution_list.items[0].trusted_signers.items #=> Array
- # resp.streaming_distribution_list.items[0].trusted_signers.items[0] #=> String
- # resp.streaming_distribution_list.items[0].comment #=> String
- # resp.streaming_distribution_list.items[0].price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
- # resp.streaming_distribution_list.items[0].enabled #=> Boolean
- # @overload list_streaming_distributions(params = {})
- # @param [Hash] params ({})
- def list_streaming_distributions(params = {}, options = {})
- req = build_request(:list_streaming_distributions, params)
- req.send_request(options)
- end
+ # List streaming distributions.
+ #
+ # @option params [String] :marker
+ # The value that you provided for the `Marker` request parameter.
+ #
+ # @option params [Integer] :max_items
+ # The value that you provided for the `MaxItems` request parameter.
+ #
+ # @return [Types::ListStreamingDistributionsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::ListStreamingDistributionsResult#streaming_distribution_list #streaming_distribution_list} => Types::StreamingDistributionList
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.list_streaming_distributions({
+ # marker: "string",
+ # max_items: 1,
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.streaming_distribution_list.marker #=> String
+ # resp.streaming_distribution_list.next_marker #=> String
+ # resp.streaming_distribution_list.max_items #=> Integer
+ # resp.streaming_distribution_list.is_truncated #=> Boolean
+ # resp.streaming_distribution_list.quantity #=> Integer
+ # resp.streaming_distribution_list.items #=> Array
+ # resp.streaming_distribution_list.items[0].id #=> String
+ # resp.streaming_distribution_list.items[0].arn #=> String
+ # resp.streaming_distribution_list.items[0].status #=> String
+ # resp.streaming_distribution_list.items[0].last_modified_time #=> Time
+ # resp.streaming_distribution_list.items[0].domain_name #=> String
+ # resp.streaming_distribution_list.items[0].s3_origin.domain_name #=> String
+ # resp.streaming_distribution_list.items[0].s3_origin.origin_access_identity #=> String
+ # resp.streaming_distribution_list.items[0].aliases.quantity #=> Integer
+ # resp.streaming_distribution_list.items[0].aliases.items #=> Array
+ # resp.streaming_distribution_list.items[0].aliases.items[0] #=> String
+ # resp.streaming_distribution_list.items[0].trusted_signers.enabled #=> Boolean
+ # resp.streaming_distribution_list.items[0].trusted_signers.quantity #=> Integer
+ # resp.streaming_distribution_list.items[0].trusted_signers.items #=> Array
+ # resp.streaming_distribution_list.items[0].trusted_signers.items[0] #=> String
+ # resp.streaming_distribution_list.items[0].comment #=> String
+ # resp.streaming_distribution_list.items[0].price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
+ # resp.streaming_distribution_list.items[0].enabled #=> Boolean
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListStreamingDistributions2017_03_25 AWS API Documentation
+ #
+ # @overload list_streaming_distributions(params = {})
+ # @param [Hash] params ({})
+ def list_streaming_distributions(params = {}, options = {})
+ req = build_request(:list_streaming_distributions, params)
+ req.send_request(options)
+ end
- # List tags for a CloudFront resource.
- # @option params [required, String] :resource
- # An ARN of a CloudFront resource.
- # @return [Types::ListTagsForResourceResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::ListTagsForResourceResult#tags #Tags} => Types::Tags
- #
- # @example Request syntax with placeholder values
- # resp = client.list_tags_for_resource({
- # resource: "ResourceARN", # required
- # })
- #
- # @example Response structure
- # resp.tags.items #=> Array
- # resp.tags.items[0].key #=> String
- # resp.tags.items[0].value #=> String
- # @overload list_tags_for_resource(params = {})
- # @param [Hash] params ({})
- def list_tags_for_resource(params = {}, options = {})
- req = build_request(:list_tags_for_resource, params)
- req.send_request(options)
- end
+ # List tags for a CloudFront resource.
+ #
+ # @option params [required, String] :resource
+ # An ARN of a CloudFront resource.
+ #
+ # @return [Types::ListTagsForResourceResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::ListTagsForResourceResult#tags #tags} => Types::Tags
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.list_tags_for_resource({
+ # resource: "ResourceARN", # required
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.tags.items #=> Array
+ # resp.tags.items[0].key #=> String
+ # resp.tags.items[0].value #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/ListTagsForResource2017_03_25 AWS API Documentation
+ #
+ # @overload list_tags_for_resource(params = {})
+ # @param [Hash] params ({})
+ def list_tags_for_resource(params = {}, options = {})
+ req = build_request(:list_tags_for_resource, params)
+ req.send_request(options)
+ end
- # Add tags to a CloudFront resource.
- # @option params [required, String] :resource
- # An ARN of a CloudFront resource.
- # @option params [required, Types::Tags] :tags
- # A complex type that contains zero or more `Tag` elements.
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
- #
- # @example Request syntax with placeholder values
- # resp = client.tag_resource({
- # resource: "ResourceARN", # required
- # tags: { # required
- # items: [
- # {
- # key: "TagKey", # required
- # value: "TagValue",
- # },
- # ],
- # },
- # })
- # @overload tag_resource(params = {})
- # @param [Hash] params ({})
- def tag_resource(params = {}, options = {})
- req = build_request(:tag_resource, params)
- req.send_request(options)
- end
+ # Add tags to a CloudFront resource.
+ #
+ # @option params [required, String] :resource
+ # An ARN of a CloudFront resource.
+ #
+ # @option params [required, Types::Tags] :tags
+ # A complex type that contains zero or more `Tag` elements.
+ #
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.tag_resource({
+ # resource: "ResourceARN", # required
+ # tags: { # required
+ # items: [
+ # {
+ # key: "TagKey", # required
+ # value: "TagValue",
+ # },
+ # ],
+ # },
+ # })
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/TagResource2017_03_25 AWS API Documentation
+ #
+ # @overload tag_resource(params = {})
+ # @param [Hash] params ({})
+ def tag_resource(params = {}, options = {})
+ req = build_request(:tag_resource, params)
+ req.send_request(options)
+ end
- # Remove tags from a CloudFront resource.
- # @option params [required, String] :resource
- # An ARN of a CloudFront resource.
- # @option params [required, Types::TagKeys] :tag_keys
- # A complex type that contains zero or more `Tag` key elements.
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
- #
- # @example Request syntax with placeholder values
- # resp = client.untag_resource({
- # resource: "ResourceARN", # required
- # tag_keys: { # required
- # items: ["TagKey"],
- # },
- # })
- # @overload untag_resource(params = {})
- # @param [Hash] params ({})
- def untag_resource(params = {}, options = {})
- req = build_request(:untag_resource, params)
- req.send_request(options)
- end
+ # Remove tags from a CloudFront resource.
+ #
+ # @option params [required, String] :resource
+ # An ARN of a CloudFront resource.
+ #
+ # @option params [required, Types::TagKeys] :tag_keys
+ # A complex type that contains zero or more `Tag` key elements.
+ #
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.untag_resource({
+ # resource: "ResourceARN", # required
+ # tag_keys: { # required
+ # items: ["TagKey"],
+ # },
+ # })
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/UntagResource2017_03_25 AWS API Documentation
+ #
+ # @overload untag_resource(params = {})
+ # @param [Hash] params ({})
+ def untag_resource(params = {}, options = {})
+ req = build_request(:untag_resource, params)
+ req.send_request(options)
+ end
- # Update an origin access identity.
- # @option params [required, Types::CloudFrontOriginAccessIdentityConfig] :cloud_front_origin_access_identity_config
- # The identity's configuration information.
- # @option params [required, String] :id
- # The identity's id.
- # @option params [String] :if_match
- # The value of the `ETag` header that you received when retrieving the
- # identity's configuration. For example: `E2QWRUHAPOMQZL`.
- # @return [Types::UpdateCloudFrontOriginAccessIdentityResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::UpdateCloudFrontOriginAccessIdentityResult#cloud_front_origin_access_identity #CloudFrontOriginAccessIdentity} => Types::CloudFrontOriginAccessIdentity
- # * {Types::UpdateCloudFrontOriginAccessIdentityResult#etag #ETag} => String
- #
- # @example Request syntax with placeholder values
- # resp = client.update_cloud_front_origin_access_identity({
- # cloud_front_origin_access_identity_config: { # required
- # caller_reference: "string", # required
- # comment: "string", # required
- # },
- # id: "string", # required
- # if_match: "string",
- # })
- #
- # @example Response structure
- # resp.cloud_front_origin_access_identity.id #=> String
- # resp.cloud_front_origin_access_identity.s3_canonical_user_id #=> String
- # resp.cloud_front_origin_access_identity.cloud_front_origin_access_identity_config.caller_reference #=> String
- # resp.cloud_front_origin_access_identity.cloud_front_origin_access_identity_config.comment #=> String
- # resp.etag #=> String
- # @overload update_cloud_front_origin_access_identity(params = {})
- # @param [Hash] params ({})
- def update_cloud_front_origin_access_identity(params = {}, options = {})
- req = build_request(:update_cloud_front_origin_access_identity, params)
- req.send_request(options)
- end
+ # Update an origin access identity.
+ #
+ # @option params [required, Types::CloudFrontOriginAccessIdentityConfig] :cloud_front_origin_access_identity_config
+ # The identity's configuration information.
+ #
+ # @option params [required, String] :id
+ # The identity's id.
+ #
+ # @option params [String] :if_match
+ # The value of the `ETag` header that you received when retrieving the
+ # identity's configuration. For example: `E2QWRUHAPOMQZL`.
+ #
+ # @return [Types::UpdateCloudFrontOriginAccessIdentityResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::UpdateCloudFrontOriginAccessIdentityResult#cloud_front_origin_access_identity #cloud_front_origin_access_identity} => Types::CloudFrontOriginAccessIdentity
+ # * {Types::UpdateCloudFrontOriginAccessIdentityResult#etag #etag} => String
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.update_cloud_front_origin_access_identity({
+ # cloud_front_origin_access_identity_config: { # required
+ # caller_reference: "string", # required
+ # comment: "string", # required
+ # },
+ # id: "string", # required
+ # if_match: "string",
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.cloud_front_origin_access_identity.id #=> String
+ # resp.cloud_front_origin_access_identity.s3_canonical_user_id #=> String
+ # resp.cloud_front_origin_access_identity.cloud_front_origin_access_identity_config.caller_reference #=> String
+ # resp.cloud_front_origin_access_identity.cloud_front_origin_access_identity_config.comment #=> String
+ # resp.etag #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/UpdateCloudFrontOriginAccessIdentity2017_03_25 AWS API Documentation
+ #
+ # @overload update_cloud_front_origin_access_identity(params = {})
+ # @param [Hash] params ({})
+ def update_cloud_front_origin_access_identity(params = {}, options = {})
+ req = build_request(:update_cloud_front_origin_access_identity, params)
+ req.send_request(options)
+ end
- # Update a distribution.
- # @option params [required, Types::DistributionConfig] :distribution_config
- # The distribution's configuration information.
- # @option params [required, String] :id
- # The distribution's id.
- # @option params [String] :if_match
- # The value of the `ETag` header that you received when retrieving the
- # distribution's configuration. For example: `E2QWRUHAPOMQZL`.
- # @return [Types::UpdateDistributionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::UpdateDistributionResult#distribution #Distribution} => Types::Distribution
- # * {Types::UpdateDistributionResult#etag #ETag} => String
- #
- # @example Request syntax with placeholder values
- # resp = client.update_distribution({
- # distribution_config: { # required
- # caller_reference: "string", # required
- # aliases: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # default_root_object: "string",
- # origins: { # required
- # quantity: 1, # required
- # items: [
- # {
- # id: "string", # required
- # domain_name: "string", # required
- # origin_path: "string",
- # custom_headers: {
- # quantity: 1, # required
- # items: [
- # {
- # header_name: "string", # required
- # header_value: "string", # required
- # },
- # ],
- # },
- # s3_origin_config: {
- # origin_access_identity: "string", # required
- # },
- # custom_origin_config: {
- # http_port: 1, # required
- # https_port: 1, # required
- # origin_protocol_policy: "http-only", # required, accepts http-only, match-viewer, https-only
- # origin_ssl_protocols: {
- # quantity: 1, # required
- # items: ["SSLv3"], # required, accepts SSLv3, TLSv1, TLSv1.1, TLSv1.2
- # },
- # },
- # },
- # ],
- # },
- # default_cache_behavior: { # required
- # target_origin_id: "string", # required
- # forwarded_values: { # required
- # query_string: false, # required
- # cookies: { # required
- # forward: "none", # required, accepts none, whitelist, all
- # whitelisted_names: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # },
- # headers: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # query_string_cache_keys: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # },
- # trusted_signers: { # required
- # enabled: false, # required
- # quantity: 1, # required
- # items: ["string"],
- # },
- # viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https
- # min_ttl: 1, # required
- # allowed_methods: {
- # quantity: 1, # required
- # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
- # cached_methods: {
- # quantity: 1, # required
- # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
- # },
- # },
- # smooth_streaming: false,
- # default_ttl: 1,
- # max_ttl: 1,
- # compress: false,
- # lambda_function_associations: {
- # quantity: 1, # required
- # items: [
- # {
- # lambda_function_arn: "string",
- # event_type: "viewer-request", # accepts viewer-request, viewer-response, origin-request, origin-response
- # },
- # ],
- # },
- # },
- # cache_behaviors: {
- # quantity: 1, # required
- # items: [
- # {
- # path_pattern: "string", # required
- # target_origin_id: "string", # required
- # forwarded_values: { # required
- # query_string: false, # required
- # cookies: { # required
- # forward: "none", # required, accepts none, whitelist, all
- # whitelisted_names: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # },
- # headers: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # query_string_cache_keys: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # },
- # trusted_signers: { # required
- # enabled: false, # required
- # quantity: 1, # required
- # items: ["string"],
- # },
- # viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https
- # min_ttl: 1, # required
- # allowed_methods: {
- # quantity: 1, # required
- # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
- # cached_methods: {
- # quantity: 1, # required
- # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
- # },
- # },
- # smooth_streaming: false,
- # default_ttl: 1,
- # max_ttl: 1,
- # compress: false,
- # lambda_function_associations: {
- # quantity: 1, # required
- # items: [
- # {
- # lambda_function_arn: "string",
- # event_type: "viewer-request", # accepts viewer-request, viewer-response, origin-request, origin-response
- # },
- # ],
- # },
- # },
- # ],
- # },
- # custom_error_responses: {
- # quantity: 1, # required
- # items: [
- # {
- # error_code: 1, # required
- # response_page_path: "string",
- # response_code: "string",
- # error_caching_min_ttl: 1,
- # },
- # ],
- # },
- # comment: "string", # required
- # logging: {
- # enabled: false, # required
- # include_cookies: false, # required
- # bucket: "string", # required
- # prefix: "string", # required
- # },
- # price_class: "PriceClass_100", # accepts PriceClass_100, PriceClass_200, PriceClass_All
- # enabled: false, # required
- # viewer_certificate: {
- # cloud_front_default_certificate: false,
- # iam_certificate_id: "string",
- # acm_certificate_arn: "string",
- # ssl_support_method: "sni-only", # accepts sni-only, vip
- # minimum_protocol_version: "SSLv3", # accepts SSLv3, TLSv1
- # certificate: "string",
- # certificate_source: "cloudfront", # accepts cloudfront, iam, acm
- # },
- # restrictions: {
- # geo_restriction: { # required
- # restriction_type: "blacklist", # required, accepts blacklist, whitelist, none
- # quantity: 1, # required
- # items: ["string"],
- # },
- # },
- # web_acl_id: "string",
- # http_version: "http1.1", # accepts http1.1, http2
- # is_ipv6_enabled: false,
- # },
- # id: "string", # required
- # if_match: "string",
- # })
- #
- # @example Response structure
- # resp.distribution.id #=> String
- # resp.distribution.arn #=> String
- # resp.distribution.status #=> String
- # resp.distribution.last_modified_time #=> Time
- # resp.distribution.in_progress_invalidation_batches #=> Integer
- # resp.distribution.domain_name #=> String
- # resp.distribution.active_trusted_signers.enabled #=> Boolean
- # resp.distribution.active_trusted_signers.quantity #=> Integer
- # resp.distribution.active_trusted_signers.items #=> Array
- # resp.distribution.active_trusted_signers.items[0].aws_account_number #=> String
- # resp.distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
- # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
- # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
- # resp.distribution.distribution_config.caller_reference #=> String
- # resp.distribution.distribution_config.aliases.quantity #=> Integer
- # resp.distribution.distribution_config.aliases.items #=> Array
- # resp.distribution.distribution_config.aliases.items[0] #=> String
- # resp.distribution.distribution_config.default_root_object #=> String
- # resp.distribution.distribution_config.origins.quantity #=> Integer
- # resp.distribution.distribution_config.origins.items #=> Array
- # resp.distribution.distribution_config.origins.items[0].id #=> String
- # resp.distribution.distribution_config.origins.items[0].domain_name #=> String
- # resp.distribution.distribution_config.origins.items[0].origin_path #=> String
- # resp.distribution.distribution_config.origins.items[0].custom_headers.quantity #=> Integer
- # resp.distribution.distribution_config.origins.items[0].custom_headers.items #=> Array
- # resp.distribution.distribution_config.origins.items[0].custom_headers.items[0].header_name #=> String
- # resp.distribution.distribution_config.origins.items[0].custom_headers.items[0].header_value #=> String
- # resp.distribution.distribution_config.origins.items[0].s3_origin_config.origin_access_identity #=> String
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.http_port #=> Integer
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.https_port #=> Integer
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_protocol_policy #=> String, one of "http-only", "match-viewer", "https-only"
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.quantity #=> Integer
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items #=> Array
- # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items[0] #=> String, one of "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2"
- # resp.distribution.distribution_config.default_cache_behavior.target_origin_id #=> String
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string #=> Boolean
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items[0] #=> String
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.items[0] #=> String
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items[0] #=> String
- # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.enabled #=> Boolean
- # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String
- # resp.distribution.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
- # resp.distribution.distribution_config.default_cache_behavior.min_ttl #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution.distribution_config.default_cache_behavior.smooth_streaming #=> Boolean
- # resp.distribution.distribution_config.default_cache_behavior.default_ttl #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.max_ttl #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.compress #=> Boolean
- # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.quantity #=> Integer
- # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items #=> Array
- # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].lambda_function_arn #=> String
- # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
- # resp.distribution.distribution_config.cache_behaviors.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].path_pattern #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].target_origin_id #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items[0] #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items[0] #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items[0] #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.enabled #=> Boolean
- # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
- # resp.distribution.distribution_config.cache_behaviors.items[0].min_ttl #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
- # resp.distribution.distribution_config.cache_behaviors.items[0].smooth_streaming #=> Boolean
- # resp.distribution.distribution_config.cache_behaviors.items[0].default_ttl #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].max_ttl #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].compress #=> Boolean
- # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.quantity #=> Integer
- # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items #=> Array
- # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].lambda_function_arn #=> String
- # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
- # resp.distribution.distribution_config.custom_error_responses.quantity #=> Integer
- # resp.distribution.distribution_config.custom_error_responses.items #=> Array
- # resp.distribution.distribution_config.custom_error_responses.items[0].error_code #=> Integer
- # resp.distribution.distribution_config.custom_error_responses.items[0].response_page_path #=> String
- # resp.distribution.distribution_config.custom_error_responses.items[0].response_code #=> String
- # resp.distribution.distribution_config.custom_error_responses.items[0].error_caching_min_ttl #=> Integer
- # resp.distribution.distribution_config.comment #=> String
- # resp.distribution.distribution_config.logging.enabled #=> Boolean
- # resp.distribution.distribution_config.logging.include_cookies #=> Boolean
- # resp.distribution.distribution_config.logging.bucket #=> String
- # resp.distribution.distribution_config.logging.prefix #=> String
- # resp.distribution.distribution_config.price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
- # resp.distribution.distribution_config.enabled #=> Boolean
- # resp.distribution.distribution_config.viewer_certificate.cloud_front_default_certificate #=> Boolean
- # resp.distribution.distribution_config.viewer_certificate.iam_certificate_id #=> String
- # resp.distribution.distribution_config.viewer_certificate.acm_certificate_arn #=> String
- # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip"
- # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1"
- # resp.distribution.distribution_config.viewer_certificate.certificate #=> String
- # resp.distribution.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
- # resp.distribution.distribution_config.restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
- # resp.distribution.distribution_config.restrictions.geo_restriction.quantity #=> Integer
- # resp.distribution.distribution_config.restrictions.geo_restriction.items #=> Array
- # resp.distribution.distribution_config.restrictions.geo_restriction.items[0] #=> String
- # resp.distribution.distribution_config.web_acl_id #=> String
- # resp.distribution.distribution_config.http_version #=> String, one of "http1.1", "http2"
- # resp.distribution.distribution_config.is_ipv6_enabled #=> Boolean
- # resp.etag #=> String
- # @overload update_distribution(params = {})
- # @param [Hash] params ({})
- def update_distribution(params = {}, options = {})
- req = build_request(:update_distribution, params)
- req.send_request(options)
- end
+ # Update a distribution.
+ #
+ # @option params [required, Types::DistributionConfig] :distribution_config
+ # The distribution's configuration information.
+ #
+ # @option params [required, String] :id
+ # The distribution's id.
+ #
+ # @option params [String] :if_match
+ # The value of the `ETag` header that you received when retrieving the
+ # distribution's configuration. For example: `E2QWRUHAPOMQZL`.
+ #
+ # @return [Types::UpdateDistributionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::UpdateDistributionResult#distribution #distribution} => Types::Distribution
+ # * {Types::UpdateDistributionResult#etag #etag} => String
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.update_distribution({
+ # distribution_config: { # required
+ # caller_reference: "string", # required
+ # aliases: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # default_root_object: "string",
+ # origins: { # required
+ # quantity: 1, # required
+ # items: [
+ # {
+ # id: "string", # required
+ # domain_name: "string", # required
+ # origin_path: "string",
+ # custom_headers: {
+ # quantity: 1, # required
+ # items: [
+ # {
+ # header_name: "string", # required
+ # header_value: "string", # required
+ # },
+ # ],
+ # },
+ # s3_origin_config: {
+ # origin_access_identity: "string", # required
+ # },
+ # custom_origin_config: {
+ # http_port: 1, # required
+ # https_port: 1, # required
+ # origin_protocol_policy: "http-only", # required, accepts http-only, match-viewer, https-only
+ # origin_ssl_protocols: {
+ # quantity: 1, # required
+ # items: ["SSLv3"], # required, accepts SSLv3, TLSv1, TLSv1.1, TLSv1.2
+ # },
+ # origin_read_timeout: 1,
+ # origin_keepalive_timeout: 1,
+ # },
+ # },
+ # ],
+ # },
+ # default_cache_behavior: { # required
+ # target_origin_id: "string", # required
+ # forwarded_values: { # required
+ # query_string: false, # required
+ # cookies: { # required
+ # forward: "none", # required, accepts none, whitelist, all
+ # whitelisted_names: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # },
+ # headers: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # query_string_cache_keys: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # },
+ # trusted_signers: { # required
+ # enabled: false, # required
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https
+ # min_ttl: 1, # required
+ # allowed_methods: {
+ # quantity: 1, # required
+ # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
+ # cached_methods: {
+ # quantity: 1, # required
+ # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
+ # },
+ # },
+ # smooth_streaming: false,
+ # default_ttl: 1,
+ # max_ttl: 1,
+ # compress: false,
+ # lambda_function_associations: {
+ # quantity: 1, # required
+ # items: [
+ # {
+ # lambda_function_arn: "string",
+ # event_type: "viewer-request", # accepts viewer-request, viewer-response, origin-request, origin-response
+ # },
+ # ],
+ # },
+ # },
+ # cache_behaviors: {
+ # quantity: 1, # required
+ # items: [
+ # {
+ # path_pattern: "string", # required
+ # target_origin_id: "string", # required
+ # forwarded_values: { # required
+ # query_string: false, # required
+ # cookies: { # required
+ # forward: "none", # required, accepts none, whitelist, all
+ # whitelisted_names: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # },
+ # headers: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # query_string_cache_keys: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # },
+ # trusted_signers: { # required
+ # enabled: false, # required
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https
+ # min_ttl: 1, # required
+ # allowed_methods: {
+ # quantity: 1, # required
+ # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
+ # cached_methods: {
+ # quantity: 1, # required
+ # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
+ # },
+ # },
+ # smooth_streaming: false,
+ # default_ttl: 1,
+ # max_ttl: 1,
+ # compress: false,
+ # lambda_function_associations: {
+ # quantity: 1, # required
+ # items: [
+ # {
+ # lambda_function_arn: "string",
+ # event_type: "viewer-request", # accepts viewer-request, viewer-response, origin-request, origin-response
+ # },
+ # ],
+ # },
+ # },
+ # ],
+ # },
+ # custom_error_responses: {
+ # quantity: 1, # required
+ # items: [
+ # {
+ # error_code: 1, # required
+ # response_page_path: "string",
+ # response_code: "string",
+ # error_caching_min_ttl: 1,
+ # },
+ # ],
+ # },
+ # comment: "string", # required
+ # logging: {
+ # enabled: false, # required
+ # include_cookies: false, # required
+ # bucket: "string", # required
+ # prefix: "string", # required
+ # },
+ # price_class: "PriceClass_100", # accepts PriceClass_100, PriceClass_200, PriceClass_All
+ # enabled: false, # required
+ # viewer_certificate: {
+ # cloud_front_default_certificate: false,
+ # iam_certificate_id: "string",
+ # acm_certificate_arn: "string",
+ # ssl_support_method: "sni-only", # accepts sni-only, vip
+ # minimum_protocol_version: "SSLv3", # accepts SSLv3, TLSv1
+ # certificate: "string",
+ # certificate_source: "cloudfront", # accepts cloudfront, iam, acm
+ # },
+ # restrictions: {
+ # geo_restriction: { # required
+ # restriction_type: "blacklist", # required, accepts blacklist, whitelist, none
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # },
+ # web_acl_id: "string",
+ # http_version: "http1.1", # accepts http1.1, http2
+ # is_ipv6_enabled: false,
+ # },
+ # id: "string", # required
+ # if_match: "string",
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.distribution.id #=> String
+ # resp.distribution.arn #=> String
+ # resp.distribution.status #=> String
+ # resp.distribution.last_modified_time #=> Time
+ # resp.distribution.in_progress_invalidation_batches #=> Integer
+ # resp.distribution.domain_name #=> String
+ # resp.distribution.active_trusted_signers.enabled #=> Boolean
+ # resp.distribution.active_trusted_signers.quantity #=> Integer
+ # resp.distribution.active_trusted_signers.items #=> Array
+ # resp.distribution.active_trusted_signers.items[0].aws_account_number #=> String
+ # resp.distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
+ # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
+ # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
+ # resp.distribution.distribution_config.caller_reference #=> String
+ # resp.distribution.distribution_config.aliases.quantity #=> Integer
+ # resp.distribution.distribution_config.aliases.items #=> Array
+ # resp.distribution.distribution_config.aliases.items[0] #=> String
+ # resp.distribution.distribution_config.default_root_object #=> String
+ # resp.distribution.distribution_config.origins.quantity #=> Integer
+ # resp.distribution.distribution_config.origins.items #=> Array
+ # resp.distribution.distribution_config.origins.items[0].id #=> String
+ # resp.distribution.distribution_config.origins.items[0].domain_name #=> String
+ # resp.distribution.distribution_config.origins.items[0].origin_path #=> String
+ # resp.distribution.distribution_config.origins.items[0].custom_headers.quantity #=> Integer
+ # resp.distribution.distribution_config.origins.items[0].custom_headers.items #=> Array
+ # resp.distribution.distribution_config.origins.items[0].custom_headers.items[0].header_name #=> String
+ # resp.distribution.distribution_config.origins.items[0].custom_headers.items[0].header_value #=> String
+ # resp.distribution.distribution_config.origins.items[0].s3_origin_config.origin_access_identity #=> String
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.http_port #=> Integer
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.https_port #=> Integer
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_protocol_policy #=> String, one of "http-only", "match-viewer", "https-only"
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.quantity #=> Integer
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items #=> Array
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items[0] #=> String, one of "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2"
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_read_timeout #=> Integer
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.target_origin_id #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string #=> Boolean
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items[0] #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.items[0] #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items[0] #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.enabled #=> Boolean
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
+ # resp.distribution.distribution_config.default_cache_behavior.min_ttl #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution.distribution_config.default_cache_behavior.smooth_streaming #=> Boolean
+ # resp.distribution.distribution_config.default_cache_behavior.default_ttl #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.max_ttl #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.compress #=> Boolean
+ # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.quantity #=> Integer
+ # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items #=> Array
+ # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].lambda_function_arn #=> String
+ # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
+ # resp.distribution.distribution_config.cache_behaviors.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].path_pattern #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].target_origin_id #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items[0] #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items[0] #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items[0] #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.enabled #=> Boolean
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
+ # resp.distribution.distribution_config.cache_behaviors.items[0].min_ttl #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
+ # resp.distribution.distribution_config.cache_behaviors.items[0].smooth_streaming #=> Boolean
+ # resp.distribution.distribution_config.cache_behaviors.items[0].default_ttl #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].max_ttl #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].compress #=> Boolean
+ # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.quantity #=> Integer
+ # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items #=> Array
+ # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].lambda_function_arn #=> String
+ # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
+ # resp.distribution.distribution_config.custom_error_responses.quantity #=> Integer
+ # resp.distribution.distribution_config.custom_error_responses.items #=> Array
+ # resp.distribution.distribution_config.custom_error_responses.items[0].error_code #=> Integer
+ # resp.distribution.distribution_config.custom_error_responses.items[0].response_page_path #=> String
+ # resp.distribution.distribution_config.custom_error_responses.items[0].response_code #=> String
+ # resp.distribution.distribution_config.custom_error_responses.items[0].error_caching_min_ttl #=> Integer
+ # resp.distribution.distribution_config.comment #=> String
+ # resp.distribution.distribution_config.logging.enabled #=> Boolean
+ # resp.distribution.distribution_config.logging.include_cookies #=> Boolean
+ # resp.distribution.distribution_config.logging.bucket #=> String
+ # resp.distribution.distribution_config.logging.prefix #=> String
+ # resp.distribution.distribution_config.price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
+ # resp.distribution.distribution_config.enabled #=> Boolean
+ # resp.distribution.distribution_config.viewer_certificate.cloud_front_default_certificate #=> Boolean
+ # resp.distribution.distribution_config.viewer_certificate.iam_certificate_id #=> String
+ # resp.distribution.distribution_config.viewer_certificate.acm_certificate_arn #=> String
+ # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip"
+ # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1"
+ # resp.distribution.distribution_config.viewer_certificate.certificate #=> String
+ # resp.distribution.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
+ # resp.distribution.distribution_config.restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
+ # resp.distribution.distribution_config.restrictions.geo_restriction.quantity #=> Integer
+ # resp.distribution.distribution_config.restrictions.geo_restriction.items #=> Array
+ # resp.distribution.distribution_config.restrictions.geo_restriction.items[0] #=> String
+ # resp.distribution.distribution_config.web_acl_id #=> String
+ # resp.distribution.distribution_config.http_version #=> String, one of "http1.1", "http2"
+ # resp.distribution.distribution_config.is_ipv6_enabled #=> Boolean
+ # resp.etag #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/UpdateDistribution2017_03_25 AWS API Documentation
+ #
+ # @overload update_distribution(params = {})
+ # @param [Hash] params ({})
+ def update_distribution(params = {}, options = {})
+ req = build_request(:update_distribution, params)
+ req.send_request(options)
+ end
- # Update a streaming distribution.
- # @option params [required, Types::StreamingDistributionConfig] :streaming_distribution_config
- # The streaming distribution's configuration information.
- # @option params [required, String] :id
- # The streaming distribution's id.
- # @option params [String] :if_match
- # The value of the `ETag` header that you received when retrieving the
- # streaming distribution's configuration. For example:
- # `E2QWRUHAPOMQZL`.
- # @return [Types::UpdateStreamingDistributionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
- #
- # * {Types::UpdateStreamingDistributionResult#streaming_distribution #StreamingDistribution} => Types::StreamingDistribution
- # * {Types::UpdateStreamingDistributionResult#etag #ETag} => String
- #
- # @example Request syntax with placeholder values
- # resp = client.update_streaming_distribution({
- # streaming_distribution_config: { # required
- # caller_reference: "string", # required
- # s3_origin: { # required
- # domain_name: "string", # required
- # origin_access_identity: "string", # required
- # },
- # aliases: {
- # quantity: 1, # required
- # items: ["string"],
- # },
- # comment: "string", # required
- # logging: {
- # enabled: false, # required
- # bucket: "string", # required
- # prefix: "string", # required
- # },
- # trusted_signers: { # required
- # enabled: false, # required
- # quantity: 1, # required
- # items: ["string"],
- # },
- # price_class: "PriceClass_100", # accepts PriceClass_100, PriceClass_200, PriceClass_All
- # enabled: false, # required
- # },
- # id: "string", # required
- # if_match: "string",
- # })
- #
- # @example Response structure
- # resp.streaming_distribution.id #=> String
- # resp.streaming_distribution.arn #=> String
- # resp.streaming_distribution.status #=> String
- # resp.streaming_distribution.last_modified_time #=> Time
- # resp.streaming_distribution.domain_name #=> String
- # resp.streaming_distribution.active_trusted_signers.enabled #=> Boolean
- # resp.streaming_distribution.active_trusted_signers.quantity #=> Integer
- # resp.streaming_distribution.active_trusted_signers.items #=> Array
- # resp.streaming_distribution.active_trusted_signers.items[0].aws_account_number #=> String
- # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
- # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
- # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
- # resp.streaming_distribution.streaming_distribution_config.caller_reference #=> String
- # resp.streaming_distribution.streaming_distribution_config.s3_origin.domain_name #=> String
- # resp.streaming_distribution.streaming_distribution_config.s3_origin.origin_access_identity #=> String
- # resp.streaming_distribution.streaming_distribution_config.aliases.quantity #=> Integer
- # resp.streaming_distribution.streaming_distribution_config.aliases.items #=> Array
- # resp.streaming_distribution.streaming_distribution_config.aliases.items[0] #=> String
- # resp.streaming_distribution.streaming_distribution_config.comment #=> String
- # resp.streaming_distribution.streaming_distribution_config.logging.enabled #=> Boolean
- # resp.streaming_distribution.streaming_distribution_config.logging.bucket #=> String
- # resp.streaming_distribution.streaming_distribution_config.logging.prefix #=> String
- # resp.streaming_distribution.streaming_distribution_config.trusted_signers.enabled #=> Boolean
- # resp.streaming_distribution.streaming_distribution_config.trusted_signers.quantity #=> Integer
- # resp.streaming_distribution.streaming_distribution_config.trusted_signers.items #=> Array
- # resp.streaming_distribution.streaming_distribution_config.trusted_signers.items[0] #=> String
- # resp.streaming_distribution.streaming_distribution_config.price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
- # resp.streaming_distribution.streaming_distribution_config.enabled #=> Boolean
- # resp.etag #=> String
- # @overload update_streaming_distribution(params = {})
- # @param [Hash] params ({})
- def update_streaming_distribution(params = {}, options = {})
- req = build_request(:update_streaming_distribution, params)
- req.send_request(options)
- end
+ # Update a streaming distribution.
+ #
+ # @option params [required, Types::StreamingDistributionConfig] :streaming_distribution_config
+ # The streaming distribution's configuration information.
+ #
+ # @option params [required, String] :id
+ # The streaming distribution's id.
+ #
+ # @option params [String] :if_match
+ # The value of the `ETag` header that you received when retrieving the
+ # streaming distribution's configuration. For example:
+ # `E2QWRUHAPOMQZL`.
+ #
+ # @return [Types::UpdateStreamingDistributionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::UpdateStreamingDistributionResult#streaming_distribution #streaming_distribution} => Types::StreamingDistribution
+ # * {Types::UpdateStreamingDistributionResult#etag #etag} => String
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.update_streaming_distribution({
+ # streaming_distribution_config: { # required
+ # caller_reference: "string", # required
+ # s3_origin: { # required
+ # domain_name: "string", # required
+ # origin_access_identity: "string", # required
+ # },
+ # aliases: {
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # comment: "string", # required
+ # logging: {
+ # enabled: false, # required
+ # bucket: "string", # required
+ # prefix: "string", # required
+ # },
+ # trusted_signers: { # required
+ # enabled: false, # required
+ # quantity: 1, # required
+ # items: ["string"],
+ # },
+ # price_class: "PriceClass_100", # accepts PriceClass_100, PriceClass_200, PriceClass_All
+ # enabled: false, # required
+ # },
+ # id: "string", # required
+ # if_match: "string",
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.streaming_distribution.id #=> String
+ # resp.streaming_distribution.arn #=> String
+ # resp.streaming_distribution.status #=> String
+ # resp.streaming_distribution.last_modified_time #=> Time
+ # resp.streaming_distribution.domain_name #=> String
+ # resp.streaming_distribution.active_trusted_signers.enabled #=> Boolean
+ # resp.streaming_distribution.active_trusted_signers.quantity #=> Integer
+ # resp.streaming_distribution.active_trusted_signers.items #=> Array
+ # resp.streaming_distribution.active_trusted_signers.items[0].aws_account_number #=> String
+ # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
+ # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
+ # resp.streaming_distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
+ # resp.streaming_distribution.streaming_distribution_config.caller_reference #=> String
+ # resp.streaming_distribution.streaming_distribution_config.s3_origin.domain_name #=> String
+ # resp.streaming_distribution.streaming_distribution_config.s3_origin.origin_access_identity #=> String
+ # resp.streaming_distribution.streaming_distribution_config.aliases.quantity #=> Integer
+ # resp.streaming_distribution.streaming_distribution_config.aliases.items #=> Array
+ # resp.streaming_distribution.streaming_distribution_config.aliases.items[0] #=> String
+ # resp.streaming_distribution.streaming_distribution_config.comment #=> String
+ # resp.streaming_distribution.streaming_distribution_config.logging.enabled #=> Boolean
+ # resp.streaming_distribution.streaming_distribution_config.logging.bucket #=> String
+ # resp.streaming_distribution.streaming_distribution_config.logging.prefix #=> String
+ # resp.streaming_distribution.streaming_distribution_config.trusted_signers.enabled #=> Boolean
+ # resp.streaming_distribution.streaming_distribution_config.trusted_signers.quantity #=> Integer
+ # resp.streaming_distribution.streaming_distribution_config.trusted_signers.items #=> Array
+ # resp.streaming_distribution.streaming_distribution_config.trusted_signers.items[0] #=> String
+ # resp.streaming_distribution.streaming_distribution_config.price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
+ # resp.streaming_distribution.streaming_distribution_config.enabled #=> Boolean
+ # resp.etag #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2017-03-25/UpdateStreamingDistribution2017_03_25 AWS API Documentation
+ #
+ # @overload update_streaming_distribution(params = {})
+ # @param [Hash] params ({})
+ def update_streaming_distribution(params = {}, options = {})
+ req = build_request(:update_streaming_distribution, params)
+ req.send_request(options)
+ end
- # @!endgroup
+ # @!endgroup
- # @param params ({})
- # @api private
- def build_request(operation_name, params = {})
- handlers = @handlers.for(operation_name)
- context = Seahorse::Client::RequestContext.new(
- operation_name: operation_name,
- operation: config.api.operation(operation_name),
- client: self,
- params: params,
- config: config)
- context[:gem_name] = 'aws-sdk-cloudfront'
- context[:gem_version] = '1.0.0.rc2'
- Seahorse::Client::Request.new(handlers, context)
- end
+ # @param params ({})
+ # @api private
+ def build_request(operation_name, params = {})
+ handlers = @handlers.for(operation_name)
+ context = Seahorse::Client::RequestContext.new(
+ operation_name: operation_name,
+ operation: config.api.operation(operation_name),
+ client: self,
+ params: params,
+ config: config)
+ context[:gem_name] = 'aws-sdk-cloudfront'
+ context[:gem_version] = '1.0.0.rc3'
+ Seahorse::Client::Request.new(handlers, context)
+ end
- # Polls an API operation until a resource enters a desired state.
- #
- # ## Basic Usage
- #
- # A waiter will call an API operation until:
- #
- # * It is successful
- # * It enters a terminal state
- # * It makes the maximum number of attempts
- #
- # In between attempts, the waiter will sleep.
- #
- # # polls in a loop, sleeping between attempts
- # client.waiter_until(waiter_name, params)
- #
- # ## Configuration
- #
- # You can configure the maximum number of polling attempts, and the
- # delay (in seconds) between each polling attempt. You can pass
- # configuration as the final arguments hash.
- #
- # # poll for ~25 seconds
- # client.wait_until(waiter_name, params, {
- # max_attempts: 5,
- # delay: 5,
- # })
- #
- # ## Callbacks
- #
- # You can be notified before each polling attempt and before each
- # delay. If you throw `:success` or `:failure` from these callbacks,
- # it will terminate the waiter.
- #
- # started_at = Time.now
- # client.wait_until(waiter_name, params, {
- #
- # # disable max attempts
- # max_attempts: nil,
- #
- # # poll for 1 hour, instead of a number of attempts
- # before_wait: -> (attempts, response) do
- # throw :failure if Time.now - started_at > 3600
- # end
- # })
- #
- # ## Handling Errors
- #
- # When a waiter is unsuccessful, it will raise an error.
- # All of the failure errors extend from
- # {Aws::Waiters::Errors::WaiterFailed}.
- #
- # begin
- # client.wait_until(...)
- # rescue Aws::Waiters::Errors::WaiterFailed
- # # resource did not enter the desired state in time
- # end
- #
- # ## Valid Waiters
- #
- # The following table lists the valid waiter names, the operations they call,
- # and the default `:delay` and `:max_attempts` values.
- #
- # | waiter_name | params | :delay | :max_attempts |
- # | ------------------------------- | ----------------------------- | -------- | ------------- |
- # | distribution_deployed | {#get_distribution} | 60 | 25 |
- # | invalidation_completed | {#get_invalidation} | 20 | 30 |
- # | streaming_distribution_deployed | {#get_streaming_distribution} | 60 | 25 |
- #
- # @raise [Errors::FailureStateError] Raised when the waiter terminates
- # because the waiter has entered a state that it will not transition
- # out of, preventing success.
- #
- # @raise [Errors::TooManyAttemptsError] Raised when the configured
- # maximum number of attempts have been made, and the waiter is not
- # yet successful.
- #
- # @raise [Errors::UnexpectedError] Raised when an error is encounted
- # while polling for a resource that is not expected.
- #
- # @raise [Errors::NoSuchWaiterError] Raised when you request to wait
- # for an unknown state.
- #
- # @return [Boolean] Returns `true` if the waiter was successful.
- # @param [Symbol] waiter_name
- # @param [Hash] params ({})
- # @param [Hash] options ({})
- # @option options [Integer] :max_attempts
- # @option options [Integer] :delay
- # @option options [Proc] :before_attempt
- # @option options [Proc] :before_wait
- def wait_until(waiter_name, params = {}, options = {})
- w = waiter(waiter_name, options)
- yield(w.waiter) if block_given? # deprecated
- w.wait(params)
- end
+ # Polls an API operation until a resource enters a desired state.
+ #
+ # ## Basic Usage
+ #
+ # A waiter will call an API operation until:
+ #
+ # * It is successful
+ # * It enters a terminal state
+ # * It makes the maximum number of attempts
+ #
+ # In between attempts, the waiter will sleep.
+ #
+ # # polls in a loop, sleeping between attempts
+ # client.waiter_until(waiter_name, params)
+ #
+ # ## Configuration
+ #
+ # You can configure the maximum number of polling attempts, and the
+ # delay (in seconds) between each polling attempt. You can pass
+ # configuration as the final arguments hash.
+ #
+ # # poll for ~25 seconds
+ # client.wait_until(waiter_name, params, {
+ # max_attempts: 5,
+ # delay: 5,
+ # })
+ #
+ # ## Callbacks
+ #
+ # You can be notified before each polling attempt and before each
+ # delay. If you throw `:success` or `:failure` from these callbacks,
+ # it will terminate the waiter.
+ #
+ # started_at = Time.now
+ # client.wait_until(waiter_name, params, {
+ #
+ # # disable max attempts
+ # max_attempts: nil,
+ #
+ # # poll for 1 hour, instead of a number of attempts
+ # before_wait: -> (attempts, response) do
+ # throw :failure if Time.now - started_at > 3600
+ # end
+ # })
+ #
+ # ## Handling Errors
+ #
+ # When a waiter is unsuccessful, it will raise an error.
+ # All of the failure errors extend from
+ # {Aws::Waiters::Errors::WaiterFailed}.
+ #
+ # begin
+ # client.wait_until(...)
+ # rescue Aws::Waiters::Errors::WaiterFailed
+ # # resource did not enter the desired state in time
+ # end
+ #
+ # ## Valid Waiters
+ #
+ # The following table lists the valid waiter names, the operations they call,
+ # and the default `:delay` and `:max_attempts` values.
+ #
+ # | waiter_name | params | :delay | :max_attempts |
+ # | ------------------------------- | ----------------------------- | -------- | ------------- |
+ # | distribution_deployed | {#get_distribution} | 60 | 25 |
+ # | invalidation_completed | {#get_invalidation} | 20 | 30 |
+ # | streaming_distribution_deployed | {#get_streaming_distribution} | 60 | 25 |
+ #
+ # @raise [Errors::FailureStateError] Raised when the waiter terminates
+ # because the waiter has entered a state that it will not transition
+ # out of, preventing success.
+ #
+ # @raise [Errors::TooManyAttemptsError] Raised when the configured
+ # maximum number of attempts have been made, and the waiter is not
+ # yet successful.
+ #
+ # @raise [Errors::UnexpectedError] Raised when an error is encounted
+ # while polling for a resource that is not expected.
+ #
+ # @raise [Errors::NoSuchWaiterError] Raised when you request to wait
+ # for an unknown state.
+ #
+ # @return [Boolean] Returns `true` if the waiter was successful.
+ # @param [Symbol] waiter_name
+ # @param [Hash] params ({})
+ # @param [Hash] options ({})
+ # @option options [Integer] :max_attempts
+ # @option options [Integer] :delay
+ # @option options [Proc] :before_attempt
+ # @option options [Proc] :before_wait
+ def wait_until(waiter_name, params = {}, options = {})
+ w = waiter(waiter_name, options)
+ yield(w.waiter) if block_given? # deprecated
+ w.wait(params)
+ end
- # @api private
- # @deprecated
- def waiter_names
- waiters.keys
- end
+ # @api private
+ # @deprecated
+ def waiter_names
+ waiters.keys
+ end
- private
+ private
- # @param [Symbol] waiter_name
- # @param [Hash] options ({})
- def waiter(waiter_name, options = {})
- waiter_class = waiters[waiter_name]
- if waiter_class
- waiter_class.new(options.merge(client: self))
- else
- raise Aws::Waiters::Errors::NoSuchWaiterError.new(waiter_name, waiters.keys)
- end
+ # @param [Symbol] waiter_name
+ # @param [Hash] options ({})
+ def waiter(waiter_name, options = {})
+ waiter_class = waiters[waiter_name]
+ if waiter_class
+ waiter_class.new(options.merge(client: self))
+ else
+ raise Aws::Waiters::Errors::NoSuchWaiterError.new(waiter_name, waiters.keys)
end
+ end
- def waiters
- {
- distribution_deployed: Waiters::DistributionDeployed,
- invalidation_completed: Waiters::InvalidationCompleted,
- streaming_distribution_deployed: Waiters::StreamingDistributionDeployed
- }
- end
+ def waiters
+ {
+ distribution_deployed: Waiters::DistributionDeployed,
+ invalidation_completed: Waiters::InvalidationCompleted,
+ streaming_distribution_deployed: Waiters::StreamingDistributionDeployed
+ }
+ end
- class << self
+ class << self
- # @api private
- attr_reader :identifier
+ # @api private
+ attr_reader :identifier
- # @api private
- def errors_module
- Errors
- end
-
+ # @api private
+ def errors_module
+ Errors
end
+
end
end
end