aws_sdk_lexmodelsv2/client/
create_bot.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 [`CreateBot`](crate::operation::create_bot::builders::CreateBotFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`bot_name(impl Into<String>)`](crate::operation::create_bot::builders::CreateBotFluentBuilder::bot_name) / [`set_bot_name(Option<String>)`](crate::operation::create_bot::builders::CreateBotFluentBuilder::set_bot_name):<br>required: **true**<br><p>The name of the bot. The bot name must be unique in the account that creates the bot.</p><br>
7    ///   - [`description(impl Into<String>)`](crate::operation::create_bot::builders::CreateBotFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_bot::builders::CreateBotFluentBuilder::set_description):<br>required: **false**<br><p>A description of the bot. It appears in lists to help you identify a particular bot.</p><br>
8    ///   - [`role_arn(impl Into<String>)`](crate::operation::create_bot::builders::CreateBotFluentBuilder::role_arn) / [`set_role_arn(Option<String>)`](crate::operation::create_bot::builders::CreateBotFluentBuilder::set_role_arn):<br>required: **true**<br><p>The Amazon Resource Name (ARN) of an IAM role that has permission to access the bot.</p><br>
9    ///   - [`data_privacy(DataPrivacy)`](crate::operation::create_bot::builders::CreateBotFluentBuilder::data_privacy) / [`set_data_privacy(Option<DataPrivacy>)`](crate::operation::create_bot::builders::CreateBotFluentBuilder::set_data_privacy):<br>required: **true**<br><p>Provides information on additional privacy protections Amazon Lex should use with the bot's data.</p><br>
10    ///   - [`idle_session_ttl_in_seconds(i32)`](crate::operation::create_bot::builders::CreateBotFluentBuilder::idle_session_ttl_in_seconds) / [`set_idle_session_ttl_in_seconds(Option<i32>)`](crate::operation::create_bot::builders::CreateBotFluentBuilder::set_idle_session_ttl_in_seconds):<br>required: **true**<br><p>The time, in seconds, that Amazon Lex should keep information about a user's conversation with the bot.</p> <p>A user interaction remains active for the amount of time specified. If no conversation occurs during this time, the session expires and Amazon Lex deletes any data provided before the timeout.</p> <p>You can specify between 60 (1 minute) and 86,400 (24 hours) seconds.</p><br>
11    ///   - [`bot_tags(impl Into<String>, impl Into<String>)`](crate::operation::create_bot::builders::CreateBotFluentBuilder::bot_tags) / [`set_bot_tags(Option<HashMap::<String, String>>)`](crate::operation::create_bot::builders::CreateBotFluentBuilder::set_bot_tags):<br>required: **false**<br><p>A list of tags to add to the bot. You can only add tags when you create a bot. You can't use the <code>UpdateBot</code> operation to update tags. To update tags, use the <code>TagResource</code> operation.</p><br>
12    ///   - [`test_bot_alias_tags(impl Into<String>, impl Into<String>)`](crate::operation::create_bot::builders::CreateBotFluentBuilder::test_bot_alias_tags) / [`set_test_bot_alias_tags(Option<HashMap::<String, String>>)`](crate::operation::create_bot::builders::CreateBotFluentBuilder::set_test_bot_alias_tags):<br>required: **false**<br><p>A list of tags to add to the test alias for a bot. You can only add tags when you create a bot. You can't use the <code>UpdateAlias</code> operation to update tags. To update tags on the test alias, use the <code>TagResource</code> operation.</p><br>
13    ///   - [`bot_type(BotType)`](crate::operation::create_bot::builders::CreateBotFluentBuilder::bot_type) / [`set_bot_type(Option<BotType>)`](crate::operation::create_bot::builders::CreateBotFluentBuilder::set_bot_type):<br>required: **false**<br><p>The type of a bot to create.</p><br>
14    ///   - [`bot_members(BotMember)`](crate::operation::create_bot::builders::CreateBotFluentBuilder::bot_members) / [`set_bot_members(Option<Vec::<BotMember>>)`](crate::operation::create_bot::builders::CreateBotFluentBuilder::set_bot_members):<br>required: **false**<br><p>The list of bot members in a network to be created.</p><br>
15    ///   - [`error_log_settings(ErrorLogSettings)`](crate::operation::create_bot::builders::CreateBotFluentBuilder::error_log_settings) / [`set_error_log_settings(Option<ErrorLogSettings>)`](crate::operation::create_bot::builders::CreateBotFluentBuilder::set_error_log_settings):<br>required: **false**<br><p>Specifies the configuration for error logging during bot creation.</p><br>
16    /// - On success, responds with [`CreateBotOutput`](crate::operation::create_bot::CreateBotOutput) with field(s):
17    ///   - [`bot_id(Option<String>)`](crate::operation::create_bot::CreateBotOutput::bot_id): <p>A unique identifier for a particular bot. You use this to identify the bot when you call other Amazon Lex API operations.</p>
18    ///   - [`bot_name(Option<String>)`](crate::operation::create_bot::CreateBotOutput::bot_name): <p>The name specified for the bot.</p>
19    ///   - [`description(Option<String>)`](crate::operation::create_bot::CreateBotOutput::description): <p>The description specified for the bot.</p>
20    ///   - [`role_arn(Option<String>)`](crate::operation::create_bot::CreateBotOutput::role_arn): <p>The IAM role specified for the bot.</p>
21    ///   - [`data_privacy(Option<DataPrivacy>)`](crate::operation::create_bot::CreateBotOutput::data_privacy): <p>The data privacy settings specified for the bot.</p>
22    ///   - [`idle_session_ttl_in_seconds(Option<i32>)`](crate::operation::create_bot::CreateBotOutput::idle_session_ttl_in_seconds): <p>The session idle time specified for the bot.</p>
23    ///   - [`bot_status(Option<BotStatus>)`](crate::operation::create_bot::CreateBotOutput::bot_status): <p>Shows the current status of the bot. The bot is first in the <code>Creating</code> status. Once the bot is read for use, it changes to the <code>Available</code> status. After the bot is created, you can use the <code>DRAFT</code> version of the bot.</p>
24    ///   - [`creation_date_time(Option<DateTime>)`](crate::operation::create_bot::CreateBotOutput::creation_date_time): <p>A timestamp indicating the date and time that the bot was created.</p>
25    ///   - [`bot_tags(Option<HashMap::<String, String>>)`](crate::operation::create_bot::CreateBotOutput::bot_tags): <p>A list of tags associated with the bot.</p>
26    ///   - [`test_bot_alias_tags(Option<HashMap::<String, String>>)`](crate::operation::create_bot::CreateBotOutput::test_bot_alias_tags): <p>A list of tags associated with the test alias for the bot.</p>
27    ///   - [`bot_type(Option<BotType>)`](crate::operation::create_bot::CreateBotOutput::bot_type): <p>The type of a bot that was created.</p>
28    ///   - [`bot_members(Option<Vec::<BotMember>>)`](crate::operation::create_bot::CreateBotOutput::bot_members): <p>The list of bots in a network that was created.</p>
29    ///   - [`error_log_settings(Option<ErrorLogSettings>)`](crate::operation::create_bot::CreateBotOutput::error_log_settings): <p>Specifies configuration settings for delivering error logs to Cloudwatch Logs in an Amazon Lex bot response.</p>
30    /// - On failure, responds with [`SdkError<CreateBotError>`](crate::operation::create_bot::CreateBotError)
31    pub fn create_bot(&self) -> crate::operation::create_bot::builders::CreateBotFluentBuilder {
32        crate::operation::create_bot::builders::CreateBotFluentBuilder::new(self.handle.clone())
33    }
34}