aws_sdk_route53globalresolver/client/
create_access_source.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 [`CreateAccessSource`](crate::operation::create_access_source::builders::CreateAccessSourceFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`cidr(impl Into<String>)`](crate::operation::create_access_source::builders::CreateAccessSourceFluentBuilder::cidr) / [`set_cidr(Option<String>)`](crate::operation::create_access_source::builders::CreateAccessSourceFluentBuilder::set_cidr):<br>required: **true**<br><p>The IP address or CIDR range that is allowed to send DNS queries to the Route 53 Global Resolver.</p><br>
7    ///   - [`client_token(impl Into<String>)`](crate::operation::create_access_source::builders::CreateAccessSourceFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_access_source::builders::CreateAccessSourceFluentBuilder::set_client_token):<br>required: **false**<br><p>A unique string that identifies the request and ensures idempotency.</p><br>
8    ///   - [`ip_address_type(IpAddressType)`](crate::operation::create_access_source::builders::CreateAccessSourceFluentBuilder::ip_address_type) / [`set_ip_address_type(Option<IpAddressType>)`](crate::operation::create_access_source::builders::CreateAccessSourceFluentBuilder::set_ip_address_type):<br>required: **false**<br><p>The IP address type for this access source. Valid values are IPv4 and IPv6 (if the Route 53 Global Resolver supports dual-stack).</p><br>
9    ///   - [`name(impl Into<String>)`](crate::operation::create_access_source::builders::CreateAccessSourceFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_access_source::builders::CreateAccessSourceFluentBuilder::set_name):<br>required: **false**<br><p>A descriptive name for the access source.</p><br>
10    ///   - [`dns_view_id(impl Into<String>)`](crate::operation::create_access_source::builders::CreateAccessSourceFluentBuilder::dns_view_id) / [`set_dns_view_id(Option<String>)`](crate::operation::create_access_source::builders::CreateAccessSourceFluentBuilder::set_dns_view_id):<br>required: **true**<br><p>The ID of the DNS view to associate with this access source.</p><br>
11    ///   - [`protocol(DnsProtocol)`](crate::operation::create_access_source::builders::CreateAccessSourceFluentBuilder::protocol) / [`set_protocol(Option<DnsProtocol>)`](crate::operation::create_access_source::builders::CreateAccessSourceFluentBuilder::set_protocol):<br>required: **true**<br><p>The DNS protocol that is permitted for this access source. Valid values are Do53 (DNS over port 53), DoT (DNS over TLS), and DoH (DNS over HTTPS).</p><br>
12    ///   - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_access_source::builders::CreateAccessSourceFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_access_source::builders::CreateAccessSourceFluentBuilder::set_tags):<br>required: **false**<br><p>Tags to associate with the access source.</p><br>
13    /// - On success, responds with [`CreateAccessSourceOutput`](crate::operation::create_access_source::CreateAccessSourceOutput) with field(s):
14    ///   - [`arn(String)`](crate::operation::create_access_source::CreateAccessSourceOutput::arn): <p>The Amazon Resource Name (ARN) of the access source.</p>
15    ///   - [`cidr(String)`](crate::operation::create_access_source::CreateAccessSourceOutput::cidr): <p>The IP address or CIDR range that is allowed to send DNS queries to the Route 53 Global Resolver.</p>
16    ///   - [`created_at(DateTime)`](crate::operation::create_access_source::CreateAccessSourceOutput::created_at): <p>The date and time when the access source was created.</p>
17    ///   - [`id(String)`](crate::operation::create_access_source::CreateAccessSourceOutput::id): <p>The unique identifier for the access source.</p>
18    ///   - [`ip_address_type(IpAddressType)`](crate::operation::create_access_source::CreateAccessSourceOutput::ip_address_type): <p>The IP address type for this access source (IPv4 or IPv6).</p>
19    ///   - [`name(Option<String>)`](crate::operation::create_access_source::CreateAccessSourceOutput::name): <p>The descriptive name of the access source.</p>
20    ///   - [`dns_view_id(String)`](crate::operation::create_access_source::CreateAccessSourceOutput::dns_view_id): <p>The ID of the DNS view associated with this access source.</p>
21    ///   - [`protocol(DnsProtocol)`](crate::operation::create_access_source::CreateAccessSourceOutput::protocol): <p>The DNS protocol that is permitted for this access source (Do53, DoT, or DoH).</p>
22    ///   - [`status(CrResourceStatus)`](crate::operation::create_access_source::CreateAccessSourceOutput::status): <p>The operational status of the access source.</p>
23    ///   - [`updated_at(DateTime)`](crate::operation::create_access_source::CreateAccessSourceOutput::updated_at): <p>The date and time when the access source was last updated.</p>
24    /// - On failure, responds with [`SdkError<CreateAccessSourceError>`](crate::operation::create_access_source::CreateAccessSourceError)
25    pub fn create_access_source(&self) -> crate::operation::create_access_source::builders::CreateAccessSourceFluentBuilder {
26        crate::operation::create_access_source::builders::CreateAccessSourceFluentBuilder::new(self.handle.clone())
27    }
28}