NAME

Paws::Lightsail::CreateDistribution - Arguments for method CreateDistribution on Paws::Lightsail

DESCRIPTION

This class represents the parameters used for calling the method CreateDistribution on the Amazon Lightsail service. Use the attributes of this class as arguments to method CreateDistribution.

You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to CreateDistribution.

SYNOPSIS

my $lightsail = Paws->service('Lightsail');
my $CreateDistributionResult = $lightsail->CreateDistribution(
  BundleId             => 'Mystring',
  DefaultCacheBehavior => {
    Behavior => 'dont-cache',    # values: dont-cache, cache; OPTIONAL
  },
  DistributionName => 'MyResourceName',
  Origin           => {
    Name           => 'MyResourceName',
    ProtocolPolicy => 'http-only', # values: http-only, https-only; OPTIONAL
    RegionName     => 'us-east-1'
    , # values: us-east-1, us-east-2, us-west-1, us-west-2, eu-west-1, eu-west-2, eu-west-3, eu-central-1, ca-central-1, ap-south-1, ap-southeast-1, ap-southeast-2, ap-northeast-1, ap-northeast-2; OPTIONAL
  },
  CacheBehaviorSettings => {
    AllowedHTTPMethods => 'MyNonEmptyString',    # OPTIONAL
    CachedHTTPMethods  => 'MyNonEmptyString',    # OPTIONAL
    DefaultTTL         => 1,                     # OPTIONAL
    ForwardedCookies   => {
      CookiesAllowList => [ 'Mystring', ... ],    # OPTIONAL
      Option           => 'none',  # values: none, allow-list, all; OPTIONAL
    },    # OPTIONAL
    ForwardedHeaders => {
      HeadersAllowList => [
        'Accept',
        ... # values: Accept, Accept-Charset, Accept-Datetime, Accept-Encoding, Accept-Language, Authorization, CloudFront-Forwarded-Proto, CloudFront-Is-Desktop-Viewer, CloudFront-Is-Mobile-Viewer, CloudFront-Is-SmartTV-Viewer, CloudFront-Is-Tablet-Viewer, CloudFront-Viewer-Country, Host, Origin, Referer
      ],    # OPTIONAL
      Option => 'none',    # values: none, allow-list, all; OPTIONAL
    },    # OPTIONAL
    ForwardedQueryStrings => {
      Option                => 1,                      # OPTIONAL
      QueryStringsAllowList => [ 'Mystring', ... ],    # OPTIONAL
    },    # OPTIONAL
    MaximumTTL => 1,    # OPTIONAL
    MinimumTTL => 1,    # OPTIONAL
  },    # OPTIONAL
  CacheBehaviors => [
    {
      Behavior => 'dont-cache',    # values: dont-cache, cache; OPTIONAL
      Path     => 'Mystring',
    },
    ...
  ],    # OPTIONAL
  IpAddressType => 'dualstack',    # OPTIONAL
  Tags          => [
    {
      Key   => 'MyTagKey',      # OPTIONAL
      Value => 'MyTagValue',    # OPTIONAL
    },
    ...
  ],    # OPTIONAL
);

# Results:
my $Distribution = $CreateDistributionResult->Distribution;
my $Operation    = $CreateDistributionResult->Operation;

# Returns a L<Paws::Lightsail::CreateDistributionResult> object.

Values for attributes that are native types (Int, String, Float, etc) can passed as-is (scalar values). Values for complex Types (objects) can be passed as a HashRef. The keys and values of the hashref will be used to instance the underlying object. For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/lightsail/CreateDistribution

ATTRIBUTES

REQUIRED BundleId => Str

The bundle ID to use for the distribution.

A distribution bundle describes the specifications of your distribution, such as the monthly cost and monthly network transfer quota.

Use the GetDistributionBundles action to get a list of distribution bundle IDs that you can specify.

CacheBehaviors => ArrayRef[Paws::Lightsail::CacheBehaviorPerPath]

An array of objects that describe the per-path cache behavior for the distribution.

CacheBehaviorSettings => Paws::Lightsail::CacheSettings

An object that describes the cache behavior settings for the distribution.

REQUIRED DefaultCacheBehavior => Paws::Lightsail::CacheBehavior

An object that describes the default cache behavior for the distribution.

REQUIRED DistributionName => Str

The name for the distribution.

IpAddressType => Str

The IP address type for the distribution.

The possible values are ipv4 for IPv4 only, and dualstack for IPv4 and IPv6.

The default value is dualstack.

Valid values are: "dualstack", "ipv4"

REQUIRED Origin => Paws::Lightsail::InputOrigin

An object that describes the origin resource for the distribution, such as a Lightsail instance or load balancer.

The distribution pulls, caches, and serves content from the origin.

Tags => ArrayRef[Paws::Lightsail::Tag]

The tag keys and optional values to add to the distribution during create.

Use the TagResource action to tag a resource after it's created.

SEE ALSO

This class forms part of Paws, documenting arguments for method CreateDistribution in Paws::Lightsail

BUGS and CONTRIBUTIONS

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

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