aws-sdk-oam 1.53.0

AWS SDK for CloudWatch Observability Access Manager
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`CreateLink`](crate::operation::create_link::builders::CreateLinkFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`label_template(impl Into<String>)`](crate::operation::create_link::builders::CreateLinkFluentBuilder::label_template) / [`set_label_template(Option<String>)`](crate::operation::create_link::builders::CreateLinkFluentBuilder::set_label_template):<br>required: **true**<br><p>Specify a friendly human-readable name to use to identify this source account when you are viewing data from it in the monitoring account.</p> <p>You can use a custom label or use the following variables:</p> <ul>  <li>   <p><code>$AccountName</code> is the name of the account</p></li>  <li>   <p><code>$AccountEmail</code> is the globally unique email address of the account</p></li>  <li>   <p><code>$AccountEmailNoDomain</code> is the email address of the account without the domain name</p></li> </ul><br>
    ///   - [`resource_types(ResourceType)`](crate::operation::create_link::builders::CreateLinkFluentBuilder::resource_types) / [`set_resource_types(Option<Vec::<ResourceType>>)`](crate::operation::create_link::builders::CreateLinkFluentBuilder::set_resource_types):<br>required: **true**<br><p>An array of strings that define which types of data that the source account shares with the monitoring account.</p><br>
    ///   - [`sink_identifier(impl Into<String>)`](crate::operation::create_link::builders::CreateLinkFluentBuilder::sink_identifier) / [`set_sink_identifier(Option<String>)`](crate::operation::create_link::builders::CreateLinkFluentBuilder::set_sink_identifier):<br>required: **true**<br><p>The ARN of the sink to use to create this link. You can use <a href="https://docs.aws.amazon.com/OAM/latest/APIReference/API_ListSinks.html">ListSinks</a> to find the ARNs of sinks.</p> <p>For more information about sinks, see <a href="https://docs.aws.amazon.com/OAM/latest/APIReference/API_CreateSink.html">CreateSink</a>.</p><br>
    ///   - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_link::builders::CreateLinkFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_link::builders::CreateLinkFluentBuilder::set_tags):<br>required: **false**<br><p>Assigns one or more tags (key-value pairs) to the link.</p> <p>Tags can help you organize and categorize your resources. You can also use them to scope user permissions by granting a user permission to access or change only resources with certain tag values.</p> <p>For more information about using tags to control access, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html">Controlling access to Amazon Web Services resources using tags</a>.</p><br>
    ///   - [`link_configuration(LinkConfiguration)`](crate::operation::create_link::builders::CreateLinkFluentBuilder::link_configuration) / [`set_link_configuration(Option<LinkConfiguration>)`](crate::operation::create_link::builders::CreateLinkFluentBuilder::set_link_configuration):<br>required: **false**<br><p>Use this structure to optionally create filters that specify that only some metric namespaces or log groups are to be shared from the source account to the monitoring account.</p><br>
    /// - On success, responds with [`CreateLinkOutput`](crate::operation::create_link::CreateLinkOutput) with field(s):
    ///   - [`arn(Option<String>)`](crate::operation::create_link::CreateLinkOutput::arn): <p>The ARN of the link that is newly created.</p>
    ///   - [`id(Option<String>)`](crate::operation::create_link::CreateLinkOutput::id): <p>The random ID string that Amazon Web Services generated as part of the link ARN.</p>
    ///   - [`label(Option<String>)`](crate::operation::create_link::CreateLinkOutput::label): <p>The label that you assigned to this link. If the <code>labelTemplate</code> includes variables, this field displays the variables resolved to their actual values.</p>
    ///   - [`label_template(Option<String>)`](crate::operation::create_link::CreateLinkOutput::label_template): <p>The exact label template that you specified, with the variables not resolved.</p>
    ///   - [`resource_types(Option<Vec::<String>>)`](crate::operation::create_link::CreateLinkOutput::resource_types): <p>The resource types supported by this link.</p>
    ///   - [`sink_arn(Option<String>)`](crate::operation::create_link::CreateLinkOutput::sink_arn): <p>The ARN of the sink that is used for this link.</p>
    ///   - [`tags(Option<HashMap::<String, String>>)`](crate::operation::create_link::CreateLinkOutput::tags): <p>The tags assigned to the link.</p>
    ///   - [`link_configuration(Option<LinkConfiguration>)`](crate::operation::create_link::CreateLinkOutput::link_configuration): <p>This structure includes filters that specify which metric namespaces and which log groups are shared from the source account to the monitoring account.</p>
    /// - On failure, responds with [`SdkError<CreateLinkError>`](crate::operation::create_link::CreateLinkError)
    pub fn create_link(&self) -> crate::operation::create_link::builders::CreateLinkFluentBuilder {
        crate::operation::create_link::builders::CreateLinkFluentBuilder::new(self.handle.clone())
    }
}