aws_sdk_ec2/client/
create_ipam.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 [`CreateIpam`](crate::operation::create_ipam::builders::CreateIpamFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`dry_run(bool)`](crate::operation::create_ipam::builders::CreateIpamFluentBuilder::dry_run) / [`set_dry_run(Option<bool>)`](crate::operation::create_ipam::builders::CreateIpamFluentBuilder::set_dry_run):<br>required: **false**<br><p>A check for 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>
7    ///   - [`description(impl Into<String>)`](crate::operation::create_ipam::builders::CreateIpamFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_ipam::builders::CreateIpamFluentBuilder::set_description):<br>required: **false**<br><p>A description for the IPAM.</p><br>
8    ///   - [`operating_regions(AddIpamOperatingRegion)`](crate::operation::create_ipam::builders::CreateIpamFluentBuilder::operating_regions) / [`set_operating_regions(Option<Vec::<AddIpamOperatingRegion>>)`](crate::operation::create_ipam::builders::CreateIpamFluentBuilder::set_operating_regions):<br>required: **false**<br><p>The operating Regions for the IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.</p> <p>For more information about operating Regions, see <a href="https://docs.aws.amazon.com/vpc/latest/ipam/create-ipam.html">Create an IPAM</a> in the <i>Amazon VPC IPAM User Guide</i>.</p><br>
9    ///   - [`tag_specifications(TagSpecification)`](crate::operation::create_ipam::builders::CreateIpamFluentBuilder::tag_specifications) / [`set_tag_specifications(Option<Vec::<TagSpecification>>)`](crate::operation::create_ipam::builders::CreateIpamFluentBuilder::set_tag_specifications):<br>required: **false**<br><p>The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key <code>Owner</code> and the value <code>TeamA</code>, specify <code>tag:Owner</code> for the filter name and <code>TeamA</code> for the filter value.</p><br>
10    ///   - [`client_token(impl Into<String>)`](crate::operation::create_ipam::builders::CreateIpamFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_ipam::builders::CreateIpamFluentBuilder::set_client_token):<br>required: **false**<br><p>A 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><br>
11    ///   - [`tier(IpamTier)`](crate::operation::create_ipam::builders::CreateIpamFluentBuilder::tier) / [`set_tier(Option<IpamTier>)`](crate::operation::create_ipam::builders::CreateIpamFluentBuilder::set_tier):<br>required: **false**<br><p>IPAM is offered in a Free Tier and an Advanced Tier. For more information about the features available in each tier and the costs associated with the tiers, see <a href="http://aws.amazon.com/vpc/pricing/">Amazon VPC pricing &gt; IPAM tab</a>.</p><br>
12    ///   - [`enable_private_gua(bool)`](crate::operation::create_ipam::builders::CreateIpamFluentBuilder::enable_private_gua) / [`set_enable_private_gua(Option<bool>)`](crate::operation::create_ipam::builders::CreateIpamFluentBuilder::set_enable_private_gua):<br>required: **false**<br><p>Enable this option to use your own GUA ranges as private IPv6 addresses. This option is disabled by default.</p><br>
13    ///   - [`metered_account(IpamMeteredAccount)`](crate::operation::create_ipam::builders::CreateIpamFluentBuilder::metered_account) / [`set_metered_account(Option<IpamMeteredAccount>)`](crate::operation::create_ipam::builders::CreateIpamFluentBuilder::set_metered_account):<br>required: **false**<br><p>A metered account is an Amazon Web Services account that is charged for active IP addresses managed in IPAM. For more information, see <a href="https://docs.aws.amazon.com/vpc/latest/ipam/ipam-enable-cost-distro.html">Enable cost distribution</a> in the <i>Amazon VPC IPAM User Guide</i>.</p> <p>Possible values:</p> <ul>  <li>   <p><code>ipam-owner</code> (default): The Amazon Web Services account which owns the IPAM is charged for all active IP addresses managed in IPAM.</p></li>  <li>   <p><code>resource-owner</code>: The Amazon Web Services account that owns the IP address is charged for the active IP address.</p></li> </ul><br>
14    /// - On success, responds with [`CreateIpamOutput`](crate::operation::create_ipam::CreateIpamOutput) with field(s):
15    ///   - [`ipam(Option<Ipam>)`](crate::operation::create_ipam::CreateIpamOutput::ipam): <p>Information about the IPAM created.</p>
16    /// - On failure, responds with [`SdkError<CreateIpamError>`](crate::operation::create_ipam::CreateIpamError)
17    pub fn create_ipam(&self) -> crate::operation::create_ipam::builders::CreateIpamFluentBuilder {
18        crate::operation::create_ipam::builders::CreateIpamFluentBuilder::new(self.handle.clone())
19    }
20}