1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`CreateProvisioningTemplate`](crate::operation::create_provisioning_template::builders::CreateProvisioningTemplateFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`template_name(impl Into<String>)`](crate::operation::create_provisioning_template::builders::CreateProvisioningTemplateFluentBuilder::template_name) / [`set_template_name(Option<String>)`](crate::operation::create_provisioning_template::builders::CreateProvisioningTemplateFluentBuilder::set_template_name):<br>required: **true**<br><p>The name of the provisioning template.</p><br>
    ///   - [`description(impl Into<String>)`](crate::operation::create_provisioning_template::builders::CreateProvisioningTemplateFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_provisioning_template::builders::CreateProvisioningTemplateFluentBuilder::set_description):<br>required: **false**<br><p>The description of the provisioning template.</p><br>
    ///   - [`template_body(impl Into<String>)`](crate::operation::create_provisioning_template::builders::CreateProvisioningTemplateFluentBuilder::template_body) / [`set_template_body(Option<String>)`](crate::operation::create_provisioning_template::builders::CreateProvisioningTemplateFluentBuilder::set_template_body):<br>required: **true**<br><p>The JSON formatted contents of the provisioning template.</p><br>
    ///   - [`enabled(bool)`](crate::operation::create_provisioning_template::builders::CreateProvisioningTemplateFluentBuilder::enabled) / [`set_enabled(Option<bool>)`](crate::operation::create_provisioning_template::builders::CreateProvisioningTemplateFluentBuilder::set_enabled):<br>required: **false**<br><p>True to enable the provisioning template, otherwise false.</p><br>
    ///   - [`provisioning_role_arn(impl Into<String>)`](crate::operation::create_provisioning_template::builders::CreateProvisioningTemplateFluentBuilder::provisioning_role_arn) / [`set_provisioning_role_arn(Option<String>)`](crate::operation::create_provisioning_template::builders::CreateProvisioningTemplateFluentBuilder::set_provisioning_role_arn):<br>required: **true**<br><p>The role ARN for the role associated with the provisioning template. This IoT role grants permission to provision a device.</p><br>
    ///   - [`pre_provisioning_hook(ProvisioningHook)`](crate::operation::create_provisioning_template::builders::CreateProvisioningTemplateFluentBuilder::pre_provisioning_hook) / [`set_pre_provisioning_hook(Option<ProvisioningHook>)`](crate::operation::create_provisioning_template::builders::CreateProvisioningTemplateFluentBuilder::set_pre_provisioning_hook):<br>required: **false**<br><p>Creates a pre-provisioning hook template. Only supports template of type <code>FLEET_PROVISIONING</code>. For more information about provisioning template types, see <a href="https://docs.aws.amazon.com/iot/latest/apireference/API_CreateProvisioningTemplate.html#iot-CreateProvisioningTemplate-request-type">type</a>.</p><br>
    ///   - [`tags(Tag)`](crate::operation::create_provisioning_template::builders::CreateProvisioningTemplateFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_provisioning_template::builders::CreateProvisioningTemplateFluentBuilder::set_tags):<br>required: **false**<br><p>Metadata which can be used to manage the provisioning template.</p><note>  <p>For URI Request parameters use format: ...key1=value1&amp;key2=value2...</p>  <p>For the CLI command-line parameter use format: &amp;&amp;tags "key1=value1&amp;key2=value2..."</p>  <p>For the cli-input-json file use format: "tags": "key1=value1&amp;key2=value2..."</p> </note><br>
    ///   - [`r#type(TemplateType)`](crate::operation::create_provisioning_template::builders::CreateProvisioningTemplateFluentBuilder::type) / [`set_type(Option<TemplateType>)`](crate::operation::create_provisioning_template::builders::CreateProvisioningTemplateFluentBuilder::set_type):<br>required: **false**<br><p>The type you define in a provisioning template. You can create a template with only one type. You can't change the template type after its creation. The default value is <code>FLEET_PROVISIONING</code>. For more information about provisioning template, see: <a href="https://docs.aws.amazon.com/iot/latest/developerguide/provision-template.html">Provisioning template</a>.</p><br>
    /// - On success, responds with [`CreateProvisioningTemplateOutput`](crate::operation::create_provisioning_template::CreateProvisioningTemplateOutput) with field(s):
    ///   - [`template_arn(Option<String>)`](crate::operation::create_provisioning_template::CreateProvisioningTemplateOutput::template_arn): <p>The ARN that identifies the provisioning template.</p>
    ///   - [`template_name(Option<String>)`](crate::operation::create_provisioning_template::CreateProvisioningTemplateOutput::template_name): <p>The name of the provisioning template.</p>
    ///   - [`default_version_id(Option<i32>)`](crate::operation::create_provisioning_template::CreateProvisioningTemplateOutput::default_version_id): <p>The default version of the provisioning template.</p>
    /// - On failure, responds with [`SdkError<CreateProvisioningTemplateError>`](crate::operation::create_provisioning_template::CreateProvisioningTemplateError)
    pub fn create_provisioning_template(&self) -> crate::operation::create_provisioning_template::builders::CreateProvisioningTemplateFluentBuilder {
        crate::operation::create_provisioning_template::builders::CreateProvisioningTemplateFluentBuilder::new(self.handle.clone())
    }
}