aws_sdk_route53/client/create_hosted_zone.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3 /// Constructs a fluent builder for the [`CreateHostedZone`](crate::operation::create_hosted_zone::builders::CreateHostedZoneFluentBuilder) operation.
4 ///
5 /// - The fluent builder is configurable:
6 /// - [`name(impl Into<String>)`](crate::operation::create_hosted_zone::builders::CreateHostedZoneFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_hosted_zone::builders::CreateHostedZoneFluentBuilder::set_name):<br>required: **true**<br><p>The name of the domain. Specify a fully qualified domain name, for example, <i>www.example.com</i>. The trailing dot is optional; Amazon Route 53 assumes that the domain name is fully qualified. This means that Route 53 treats <i>www.example.com</i> (without a trailing dot) and <i>www.example.com.</i> (with a trailing dot) as identical.</p> <p>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 <code>NameServers</code> that <code>CreateHostedZone</code> returns in <code>DelegationSet</code>.</p><br>
7 /// - [`vpc(Vpc)`](crate::operation::create_hosted_zone::builders::CreateHostedZoneFluentBuilder::vpc) / [`set_vpc(Option<Vpc>)`](crate::operation::create_hosted_zone::builders::CreateHostedZoneFluentBuilder::set_vpc):<br>required: **false**<br><p>(Private hosted zones only) A complex type that contains information about the Amazon VPC that you're associating with this hosted zone.</p> <p>You can specify only one Amazon VPC when you create a private hosted zone. If you are associating a VPC with a hosted zone with this request, the paramaters <code>VPCId</code> and <code>VPCRegion</code> are also required.</p> <p>To associate additional Amazon VPCs with the hosted zone, use <a href="https://docs.aws.amazon.com/Route53/latest/APIReference/API_AssociateVPCWithHostedZone.html">AssociateVPCWithHostedZone</a> after you create a hosted zone.</p><br>
8 /// - [`caller_reference(impl Into<String>)`](crate::operation::create_hosted_zone::builders::CreateHostedZoneFluentBuilder::caller_reference) / [`set_caller_reference(Option<String>)`](crate::operation::create_hosted_zone::builders::CreateHostedZoneFluentBuilder::set_caller_reference):<br>required: **true**<br><p>A unique string that identifies the request and that allows failed <code>CreateHostedZone</code> requests to be retried without the risk of executing the operation twice. You must use a unique <code>CallerReference</code> string every time you submit a <code>CreateHostedZone</code> request. <code>CallerReference</code> can be any unique string, for example, a date/time stamp.</p><br>
9 /// - [`hosted_zone_config(HostedZoneConfig)`](crate::operation::create_hosted_zone::builders::CreateHostedZoneFluentBuilder::hosted_zone_config) / [`set_hosted_zone_config(Option<HostedZoneConfig>)`](crate::operation::create_hosted_zone::builders::CreateHostedZoneFluentBuilder::set_hosted_zone_config):<br>required: **false**<br><p>(Optional) A complex type that contains the following optional values:</p> <ul> <li> <p>For public and private hosted zones, an optional comment</p></li> <li> <p>For private hosted zones, an optional <code>PrivateZone</code> element</p></li> </ul> <p>If you don't specify a comment or the <code>PrivateZone</code> element, omit <code>HostedZoneConfig</code> and the other elements.</p><br>
10 /// - [`delegation_set_id(impl Into<String>)`](crate::operation::create_hosted_zone::builders::CreateHostedZoneFluentBuilder::delegation_set_id) / [`set_delegation_set_id(Option<String>)`](crate::operation::create_hosted_zone::builders::CreateHostedZoneFluentBuilder::set_delegation_set_id):<br>required: **false**<br><p>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 <a href="https://docs.aws.amazon.com/Route53/latest/APIReference/API_CreateReusableDelegationSet.html">CreateReusableDelegationSet</a>.</p> <p>If you are using a reusable delegation set to create a public hosted zone for a subdomain, make sure that the parent hosted zone doesn't use one or more of the same name servers. If you have overlapping nameservers, the operation will cause a <code>ConflictingDomainsExist</code> error.</p><br>
11 /// - On success, responds with [`CreateHostedZoneOutput`](crate::operation::create_hosted_zone::CreateHostedZoneOutput) with field(s):
12 /// - [`hosted_zone(Option<HostedZone>)`](crate::operation::create_hosted_zone::CreateHostedZoneOutput::hosted_zone): <p>A complex type that contains general information about the hosted zone.</p>
13 /// - [`change_info(Option<ChangeInfo>)`](crate::operation::create_hosted_zone::CreateHostedZoneOutput::change_info): <p>A complex type that contains information about the <code>CreateHostedZone</code> request.</p>
14 /// - [`delegation_set(Option<DelegationSet>)`](crate::operation::create_hosted_zone::CreateHostedZoneOutput::delegation_set): <p>A complex type that describes the name servers for this hosted zone.</p>
15 /// - [`vpc(Option<Vpc>)`](crate::operation::create_hosted_zone::CreateHostedZoneOutput::vpc): <p>A complex type that contains information about an Amazon VPC that you associated with this hosted zone.</p>
16 /// - [`location(String)`](crate::operation::create_hosted_zone::CreateHostedZoneOutput::location): <p>The unique URL representing the new hosted zone.</p>
17 /// - On failure, responds with [`SdkError<CreateHostedZoneError>`](crate::operation::create_hosted_zone::CreateHostedZoneError)
18 pub fn create_hosted_zone(&self) -> crate::operation::create_hosted_zone::builders::CreateHostedZoneFluentBuilder {
19 crate::operation::create_hosted_zone::builders::CreateHostedZoneFluentBuilder::new(self.handle.clone())
20 }
21}