1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`CreatePortal`](crate::operation::create_portal::builders::CreatePortalFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`portal_name(impl Into<String>)`](crate::operation::create_portal::builders::CreatePortalFluentBuilder::portal_name) / [`set_portal_name(Option<String>)`](crate::operation::create_portal::builders::CreatePortalFluentBuilder::set_portal_name):<br>required: **true**<br><p>A friendly name for the portal.</p><br>
    ///   - [`portal_description(impl Into<String>)`](crate::operation::create_portal::builders::CreatePortalFluentBuilder::portal_description) / [`set_portal_description(Option<String>)`](crate::operation::create_portal::builders::CreatePortalFluentBuilder::set_portal_description):<br>required: **false**<br><p>A description for the portal.</p><br>
    ///   - [`portal_contact_email(impl Into<String>)`](crate::operation::create_portal::builders::CreatePortalFluentBuilder::portal_contact_email) / [`set_portal_contact_email(Option<String>)`](crate::operation::create_portal::builders::CreatePortalFluentBuilder::set_portal_contact_email):<br>required: **true**<br><p>The Amazon Web Services administrator's contact email address.</p><br>
    ///   - [`client_token(impl Into<String>)`](crate::operation::create_portal::builders::CreatePortalFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_portal::builders::CreatePortalFluentBuilder::set_client_token):<br>required: **false**<br><p>A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.</p><br>
    ///   - [`portal_logo_image_file(ImageFile)`](crate::operation::create_portal::builders::CreatePortalFluentBuilder::portal_logo_image_file) / [`set_portal_logo_image_file(Option<ImageFile>)`](crate::operation::create_portal::builders::CreatePortalFluentBuilder::set_portal_logo_image_file):<br>required: **false**<br><p>A logo image to display in the portal. Upload a square, high-resolution image. The image is displayed on a dark background.</p><br>
    ///   - [`role_arn(impl Into<String>)`](crate::operation::create_portal::builders::CreatePortalFluentBuilder::role_arn) / [`set_role_arn(Option<String>)`](crate::operation::create_portal::builders::CreatePortalFluentBuilder::set_role_arn):<br>required: **true**<br><p>The <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">ARN</a> of a service role that allows the portal's users to access your IoT SiteWise resources on your behalf. For more information, see <a href="https://docs.aws.amazon.com/iot-sitewise/latest/userguide/monitor-service-role.html">Using service roles for IoT SiteWise Monitor</a> in the <i>IoT SiteWise User Guide</i>.</p><br>
    ///   - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_portal::builders::CreatePortalFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_portal::builders::CreatePortalFluentBuilder::set_tags):<br>required: **false**<br><p>A list of key-value pairs that contain metadata for the portal. For more information, see <a href="https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html">Tagging your IoT SiteWise resources</a> in the <i>IoT SiteWise User Guide</i>.</p><br>
    ///   - [`portal_auth_mode(AuthMode)`](crate::operation::create_portal::builders::CreatePortalFluentBuilder::portal_auth_mode) / [`set_portal_auth_mode(Option<AuthMode>)`](crate::operation::create_portal::builders::CreatePortalFluentBuilder::set_portal_auth_mode):<br>required: **false**<br><p>The service to use to authenticate users to the portal. Choose from the following options:</p> <ul>  <li>   <p><code>SSO</code> – The portal uses IAM Identity Center to authenticate users and manage user permissions. Before you can create a portal that uses IAM Identity Center, you must enable IAM Identity Center. For more information, see <a href="https://docs.aws.amazon.com/iot-sitewise/latest/userguide/monitor-get-started.html#mon-gs-sso">Enabling IAM Identity Center</a> in the <i>IoT SiteWise User Guide</i>. This option is only available in Amazon Web Services Regions other than the China Regions.</p></li>  <li>   <p><code>IAM</code> – The portal uses Identity and Access Management to authenticate users and manage user permissions.</p></li> </ul> <p>You can't change this value after you create a portal.</p> <p>Default: <code>SSO</code></p><br>
    ///   - [`notification_sender_email(impl Into<String>)`](crate::operation::create_portal::builders::CreatePortalFluentBuilder::notification_sender_email) / [`set_notification_sender_email(Option<String>)`](crate::operation::create_portal::builders::CreatePortalFluentBuilder::set_notification_sender_email):<br>required: **false**<br><p>The email address that sends alarm notifications.</p><important>  <p>If you use the <a href="https://docs.aws.amazon.com/iotevents/latest/developerguide/lambda-support.html">IoT Events managed Lambda function</a> to manage your emails, you must <a href="https://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-email-addresses.html">verify the sender email address in Amazon SES</a>.</p> </important><br>
    ///   - [`alarms(Alarms)`](crate::operation::create_portal::builders::CreatePortalFluentBuilder::alarms) / [`set_alarms(Option<Alarms>)`](crate::operation::create_portal::builders::CreatePortalFluentBuilder::set_alarms):<br>required: **false**<br><p>Contains the configuration information of an alarm created in an IoT SiteWise Monitor portal. You can use the alarm to monitor an asset property and get notified when the asset property value is outside a specified range. For more information, see <a href="https://docs.aws.amazon.com/iot-sitewise/latest/appguide/monitor-alarms.html">Monitoring with alarms</a> in the <i>IoT SiteWise Application Guide</i>.</p><br>
    /// - On success, responds with [`CreatePortalOutput`](crate::operation::create_portal::CreatePortalOutput) with field(s):
    ///   - [`portal_id(String)`](crate::operation::create_portal::CreatePortalOutput::portal_id): <p>The ID of the created portal.</p>
    ///   - [`portal_arn(String)`](crate::operation::create_portal::CreatePortalOutput::portal_arn): <p>The <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">ARN</a> of the portal, which has the following format.</p> <p><code>arn:${Partition}:iotsitewise:${Region}:${Account}:portal/${PortalId}</code></p>
    ///   - [`portal_start_url(String)`](crate::operation::create_portal::CreatePortalOutput::portal_start_url): <p>The URL for the IoT SiteWise Monitor portal. You can use this URL to access portals that use IAM Identity Center for authentication. For portals that use IAM for authentication, you must use the IoT SiteWise console to get a URL that you can use to access the portal.</p>
    ///   - [`portal_status(Option<PortalStatus>)`](crate::operation::create_portal::CreatePortalOutput::portal_status): <p>The status of the portal, which contains a state (<code>CREATING</code> after successfully calling this operation) and any error message.</p>
    ///   - [`sso_application_id(String)`](crate::operation::create_portal::CreatePortalOutput::sso_application_id): <p>The associated IAM Identity Center application ID, if the portal uses IAM Identity Center.</p>
    /// - On failure, responds with [`SdkError<CreatePortalError>`](crate::operation::create_portal::CreatePortalError)
    pub fn create_portal(&self) -> crate::operation::create_portal::builders::CreatePortalFluentBuilder {
        crate::operation::create_portal::builders::CreatePortalFluentBuilder::new(self.handle.clone())
    }
}