libZSservicesZSamazonka-route53ZSamazonka-route53
Copyright(c) 2013-2021 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay+amazonka@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone

Amazonka.Route53.CreateHostedZone

Description

Creates a new public or private hosted zone. You create records in a public hosted zone to define how you want to route traffic on the internet for a domain, such as example.com, and its subdomains (apex.example.com, acme.example.com). You create records in a private hosted zone to define how you want to route traffic for a domain and its subdomains within one or more Amazon Virtual Private Clouds (Amazon VPCs).

You can't convert a public hosted zone to a private hosted zone or vice versa. Instead, you must create a new hosted zone with the same name and create new resource record sets.

For more information about charges for hosted zones, see Amazon Route 53 Pricing.

Note the following:

  • You can't create a hosted zone for a top-level domain (TLD) such as .com.
  • For public hosted zones, Route 53 automatically creates a default SOA record and four NS records for the zone. For more information about SOA and NS records, see NS and SOA Records that Route 53 Creates for a Hosted Zone in the Amazon Route 53 Developer Guide.

    If you want to use the same name servers for multiple public hosted zones, you can optionally associate a reusable delegation set with the hosted zone. See the DelegationSetId element.

  • If your domain is registered with a registrar other than Route 53, you must update the name servers with your registrar to make Route 53 the DNS service for the domain. For more information, see Migrating DNS Service for an Existing Domain to Amazon Route 53 in the Amazon Route 53 Developer Guide.

When you submit a CreateHostedZone request, the initial status of the hosted zone is PENDING. For public hosted zones, this means that the NS and SOA records are not yet available on all Route 53 DNS servers. When the NS and SOA records are available, the status of the zone changes to INSYNC.

The CreateHostedZone request requires the caller to have an ec2:DescribeVpcs permission.

Synopsis

Creating a Request

data CreateHostedZone Source #

A complex type that contains information about the request to create a public or private hosted zone.

See: newCreateHostedZone smart constructor.

Constructors

CreateHostedZone' 

Fields

  • delegationSetId :: Maybe ResourceId

    If you want to associate a reusable delegation set with this hosted zone, the ID that Amazon Route 53 assigned to the reusable delegation set when you created it. For more information about reusable delegation sets, see CreateReusableDelegationSet.

  • vpc :: Maybe VPC

    (Private hosted zones only) A complex type that contains information about the Amazon VPC that you're associating with this hosted zone.

    You can specify only one Amazon VPC when you create a private hosted zone. To associate additional Amazon VPCs with the hosted zone, use AssociateVPCWithHostedZone after you create a hosted zone.

  • hostedZoneConfig :: Maybe HostedZoneConfig

    (Optional) A complex type that contains the following optional values:

    • For public and private hosted zones, an optional comment
    • For private hosted zones, an optional PrivateZone element

    If you don't specify a comment or the PrivateZone element, omit HostedZoneConfig and the other elements.

  • name :: Text

    The name of the domain. Specify a fully qualified domain name, for example, www.example.com. The trailing dot is optional; Amazon Route 53 assumes that the domain name is fully qualified. This means that Route 53 treats www.example.com (without a trailing dot) and www.example.com. (with a trailing dot) as identical.

    If you're creating a public hosted zone, this is the name you have registered with your DNS registrar. If your domain name is registered with a registrar other than Route 53, change the name servers for your domain to the set of NameServers that CreateHostedZone returns in DelegationSet.

  • callerReference :: Text

    A unique string that identifies the request and that allows failed CreateHostedZone requests to be retried without the risk of executing the operation twice. You must use a unique CallerReference string every time you submit a CreateHostedZone request. CallerReference can be any unique string, for example, a date/time stamp.

Instances

Instances details
Eq CreateHostedZone Source # 
Instance details

Defined in Amazonka.Route53.CreateHostedZone

Read CreateHostedZone Source # 
Instance details

Defined in Amazonka.Route53.CreateHostedZone

Show CreateHostedZone Source # 
Instance details

Defined in Amazonka.Route53.CreateHostedZone

Generic CreateHostedZone Source # 
Instance details

Defined in Amazonka.Route53.CreateHostedZone

Associated Types

type Rep CreateHostedZone :: Type -> Type #

NFData CreateHostedZone Source # 
Instance details

Defined in Amazonka.Route53.CreateHostedZone

Methods

rnf :: CreateHostedZone -> () #

Hashable CreateHostedZone Source # 
Instance details

Defined in Amazonka.Route53.CreateHostedZone

AWSRequest CreateHostedZone Source # 
Instance details

Defined in Amazonka.Route53.CreateHostedZone

Associated Types

type AWSResponse CreateHostedZone #

ToHeaders CreateHostedZone Source # 
Instance details

Defined in Amazonka.Route53.CreateHostedZone

ToPath CreateHostedZone Source # 
Instance details

Defined in Amazonka.Route53.CreateHostedZone

ToQuery CreateHostedZone Source # 
Instance details

Defined in Amazonka.Route53.CreateHostedZone

ToElement CreateHostedZone Source # 
Instance details

Defined in Amazonka.Route53.CreateHostedZone

ToXML CreateHostedZone Source # 
Instance details

Defined in Amazonka.Route53.CreateHostedZone

type Rep CreateHostedZone Source # 
Instance details

Defined in Amazonka.Route53.CreateHostedZone

type Rep CreateHostedZone = D1 ('MetaData "CreateHostedZone" "Amazonka.Route53.CreateHostedZone" "libZSservicesZSamazonka-route53ZSamazonka-route53" 'False) (C1 ('MetaCons "CreateHostedZone'" 'PrefixI 'True) ((S1 ('MetaSel ('Just "delegationSetId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe ResourceId)) :*: S1 ('MetaSel ('Just "vpc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe VPC))) :*: (S1 ('MetaSel ('Just "hostedZoneConfig") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe HostedZoneConfig)) :*: (S1 ('MetaSel ('Just "name") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "callerReference") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text)))))
type AWSResponse CreateHostedZone Source # 
Instance details

Defined in Amazonka.Route53.CreateHostedZone

newCreateHostedZone Source #

Create a value of CreateHostedZone with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:delegationSetId:CreateHostedZone', createHostedZone_delegationSetId - If you want to associate a reusable delegation set with this hosted zone, the ID that Amazon Route 53 assigned to the reusable delegation set when you created it. For more information about reusable delegation sets, see CreateReusableDelegationSet.

$sel:vpc:CreateHostedZone', createHostedZone_vpc - (Private hosted zones only) A complex type that contains information about the Amazon VPC that you're associating with this hosted zone.

You can specify only one Amazon VPC when you create a private hosted zone. To associate additional Amazon VPCs with the hosted zone, use AssociateVPCWithHostedZone after you create a hosted zone.

$sel:hostedZoneConfig:CreateHostedZone', createHostedZone_hostedZoneConfig - (Optional) A complex type that contains the following optional values:

  • For public and private hosted zones, an optional comment
  • For private hosted zones, an optional PrivateZone element

If you don't specify a comment or the PrivateZone element, omit HostedZoneConfig and the other elements.

$sel:name:CreateHostedZone', createHostedZone_name - The name of the domain. Specify a fully qualified domain name, for example, www.example.com. The trailing dot is optional; Amazon Route 53 assumes that the domain name is fully qualified. This means that Route 53 treats www.example.com (without a trailing dot) and www.example.com. (with a trailing dot) as identical.

If you're creating a public hosted zone, this is the name you have registered with your DNS registrar. If your domain name is registered with a registrar other than Route 53, change the name servers for your domain to the set of NameServers that CreateHostedZone returns in DelegationSet.

$sel:callerReference:CreateHostedZone', createHostedZone_callerReference - A unique string that identifies the request and that allows failed CreateHostedZone requests to be retried without the risk of executing the operation twice. You must use a unique CallerReference string every time you submit a CreateHostedZone request. CallerReference can be any unique string, for example, a date/time stamp.

Request Lenses

createHostedZone_delegationSetId :: Lens' CreateHostedZone (Maybe ResourceId) Source #

If you want to associate a reusable delegation set with this hosted zone, the ID that Amazon Route 53 assigned to the reusable delegation set when you created it. For more information about reusable delegation sets, see CreateReusableDelegationSet.

createHostedZone_vpc :: Lens' CreateHostedZone (Maybe VPC) Source #

(Private hosted zones only) A complex type that contains information about the Amazon VPC that you're associating with this hosted zone.

You can specify only one Amazon VPC when you create a private hosted zone. To associate additional Amazon VPCs with the hosted zone, use AssociateVPCWithHostedZone after you create a hosted zone.

createHostedZone_hostedZoneConfig :: Lens' CreateHostedZone (Maybe HostedZoneConfig) Source #

(Optional) A complex type that contains the following optional values:

  • For public and private hosted zones, an optional comment
  • For private hosted zones, an optional PrivateZone element

If you don't specify a comment or the PrivateZone element, omit HostedZoneConfig and the other elements.

createHostedZone_name :: Lens' CreateHostedZone Text Source #

The name of the domain. Specify a fully qualified domain name, for example, www.example.com. The trailing dot is optional; Amazon Route 53 assumes that the domain name is fully qualified. This means that Route 53 treats www.example.com (without a trailing dot) and www.example.com. (with a trailing dot) as identical.

If you're creating a public hosted zone, this is the name you have registered with your DNS registrar. If your domain name is registered with a registrar other than Route 53, change the name servers for your domain to the set of NameServers that CreateHostedZone returns in DelegationSet.

createHostedZone_callerReference :: Lens' CreateHostedZone Text Source #

A unique string that identifies the request and that allows failed CreateHostedZone requests to be retried without the risk of executing the operation twice. You must use a unique CallerReference string every time you submit a CreateHostedZone request. CallerReference can be any unique string, for example, a date/time stamp.

Destructuring the Response

data CreateHostedZoneResponse Source #

A complex type containing the response information for the hosted zone.

See: newCreateHostedZoneResponse smart constructor.

Constructors

CreateHostedZoneResponse' 

Fields

  • vpc :: Maybe VPC

    A complex type that contains information about an Amazon VPC that you associated with this hosted zone.

  • httpStatus :: Int

    The response's http status code.

  • hostedZone :: HostedZone

    A complex type that contains general information about the hosted zone.

  • changeInfo :: ChangeInfo

    A complex type that contains information about the CreateHostedZone request.

  • delegationSet :: DelegationSet

    A complex type that describes the name servers for this hosted zone.

  • location :: Text

    The unique URL representing the new hosted zone.

Instances

Instances details
Eq CreateHostedZoneResponse Source # 
Instance details

Defined in Amazonka.Route53.CreateHostedZone

Read CreateHostedZoneResponse Source # 
Instance details

Defined in Amazonka.Route53.CreateHostedZone

Show CreateHostedZoneResponse Source # 
Instance details

Defined in Amazonka.Route53.CreateHostedZone

Generic CreateHostedZoneResponse Source # 
Instance details

Defined in Amazonka.Route53.CreateHostedZone

Associated Types

type Rep CreateHostedZoneResponse :: Type -> Type #

NFData CreateHostedZoneResponse Source # 
Instance details

Defined in Amazonka.Route53.CreateHostedZone

type Rep CreateHostedZoneResponse Source # 
Instance details

Defined in Amazonka.Route53.CreateHostedZone

type Rep CreateHostedZoneResponse = D1 ('MetaData "CreateHostedZoneResponse" "Amazonka.Route53.CreateHostedZone" "libZSservicesZSamazonka-route53ZSamazonka-route53" 'False) (C1 ('MetaCons "CreateHostedZoneResponse'" 'PrefixI 'True) ((S1 ('MetaSel ('Just "vpc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe VPC)) :*: (S1 ('MetaSel ('Just "httpStatus") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Just "hostedZone") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 HostedZone))) :*: (S1 ('MetaSel ('Just "changeInfo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 ChangeInfo) :*: (S1 ('MetaSel ('Just "delegationSet") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 DelegationSet) :*: S1 ('MetaSel ('Just "location") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text)))))

newCreateHostedZoneResponse Source #

Create a value of CreateHostedZoneResponse with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:vpc:CreateHostedZone', createHostedZoneResponse_vpc - A complex type that contains information about an Amazon VPC that you associated with this hosted zone.

$sel:httpStatus:CreateHostedZoneResponse', createHostedZoneResponse_httpStatus - The response's http status code.

$sel:hostedZone:CreateHostedZoneResponse', createHostedZoneResponse_hostedZone - A complex type that contains general information about the hosted zone.

$sel:changeInfo:CreateHostedZoneResponse', createHostedZoneResponse_changeInfo - A complex type that contains information about the CreateHostedZone request.

$sel:delegationSet:CreateHostedZoneResponse', createHostedZoneResponse_delegationSet - A complex type that describes the name servers for this hosted zone.

$sel:location:CreateHostedZoneResponse', createHostedZoneResponse_location - The unique URL representing the new hosted zone.

Response Lenses

createHostedZoneResponse_vpc :: Lens' CreateHostedZoneResponse (Maybe VPC) Source #

A complex type that contains information about an Amazon VPC that you associated with this hosted zone.

createHostedZoneResponse_hostedZone :: Lens' CreateHostedZoneResponse HostedZone Source #

A complex type that contains general information about the hosted zone.

createHostedZoneResponse_changeInfo :: Lens' CreateHostedZoneResponse ChangeInfo Source #

A complex type that contains information about the CreateHostedZone request.

createHostedZoneResponse_delegationSet :: Lens' CreateHostedZoneResponse DelegationSet Source #

A complex type that describes the name servers for this hosted zone.

createHostedZoneResponse_location :: Lens' CreateHostedZoneResponse Text Source #

The unique URL representing the new hosted zone.