aws_sdk_ec2/client/create_nat_gateway.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 [`CreateNatGateway`](crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder) operation.
4 ///
5 /// - The fluent builder is configurable:
6 /// - [`allocation_id(impl Into<String>)`](crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder::allocation_id) / [`set_allocation_id(Option<String>)`](crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder::set_allocation_id):<br>required: **false**<br><p>\[Public NAT gateways only\] The allocation ID of an Elastic IP address to associate with the NAT gateway. You cannot specify an Elastic IP address with a private NAT gateway. If the Elastic IP address is associated with another resource, you must first disassociate it.</p><br>
7 /// - [`client_token(impl Into<String>)`](crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder::set_client_token):<br>required: **false**<br><p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see <a href="https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html">Ensuring idempotency</a>.</p> <p>Constraint: Maximum 64 ASCII characters.</p><br>
8 /// - [`dry_run(bool)`](crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder::dry_run) / [`set_dry_run(Option<bool>)`](crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder::set_dry_run):<br>required: **false**<br><p>Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p><br>
9 /// - [`subnet_id(impl Into<String>)`](crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder::subnet_id) / [`set_subnet_id(Option<String>)`](crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder::set_subnet_id):<br>required: **true**<br><p>The ID of the subnet in which to create the NAT gateway.</p><br>
10 /// - [`tag_specifications(TagSpecification)`](crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder::tag_specifications) / [`set_tag_specifications(Option<Vec::<TagSpecification>>)`](crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder::set_tag_specifications):<br>required: **false**<br><p>The tags to assign to the NAT gateway.</p><br>
11 /// - [`connectivity_type(ConnectivityType)`](crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder::connectivity_type) / [`set_connectivity_type(Option<ConnectivityType>)`](crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder::set_connectivity_type):<br>required: **false**<br><p>Indicates whether the NAT gateway supports public or private connectivity. The default is public connectivity.</p><br>
12 /// - [`private_ip_address(impl Into<String>)`](crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder::private_ip_address) / [`set_private_ip_address(Option<String>)`](crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder::set_private_ip_address):<br>required: **false**<br><p>The private IPv4 address to assign to the NAT gateway. If you don't provide an address, a private IPv4 address will be automatically assigned.</p><br>
13 /// - [`secondary_allocation_ids(impl Into<String>)`](crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder::secondary_allocation_ids) / [`set_secondary_allocation_ids(Option<Vec::<String>>)`](crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder::set_secondary_allocation_ids):<br>required: **false**<br><p>Secondary EIP allocation IDs. For more information, see <a href="https://docs.aws.amazon.com/vpc/latest/userguide/nat-gateway-working-with.html">Create a NAT gateway</a> in the <i>Amazon VPC User Guide</i>.</p><br>
14 /// - [`secondary_private_ip_addresses(impl Into<String>)`](crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder::secondary_private_ip_addresses) / [`set_secondary_private_ip_addresses(Option<Vec::<String>>)`](crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder::set_secondary_private_ip_addresses):<br>required: **false**<br><p>Secondary private IPv4 addresses. For more information about secondary addresses, see <a href="https://docs.aws.amazon.com/vpc/latest/userguide/nat-gateway-working-with.html">Create a NAT gateway</a> in the <i>Amazon VPC User Guide</i>.</p><br>
15 /// - [`secondary_private_ip_address_count(i32)`](crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder::secondary_private_ip_address_count) / [`set_secondary_private_ip_address_count(Option<i32>)`](crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder::set_secondary_private_ip_address_count):<br>required: **false**<br><p>\[Private NAT gateway only\] The number of secondary private IPv4 addresses you want to assign to the NAT gateway. For more information about secondary addresses, see Create a NAT gateway in the Amazon VPC User Guide.</p><br>
16 /// - On success, responds with [`CreateNatGatewayOutput`](crate::operation::create_nat_gateway::CreateNatGatewayOutput) with field(s):
17 /// - [`client_token(Option<String>)`](crate::operation::create_nat_gateway::CreateNatGatewayOutput::client_token): <p>Unique, case-sensitive identifier to ensure the idempotency of the request. Only returned if a client token was provided in the request.</p>
18 /// - [`nat_gateway(Option<NatGateway>)`](crate::operation::create_nat_gateway::CreateNatGatewayOutput::nat_gateway): <p>Information about the NAT gateway.</p>
19 /// - On failure, responds with [`SdkError<CreateNatGatewayError>`](crate::operation::create_nat_gateway::CreateNatGatewayError)
20 pub fn create_nat_gateway(&self) -> crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder {
21 crate::operation::create_nat_gateway::builders::CreateNatGatewayFluentBuilder::new(self.handle.clone())
22 }
23}