aws_sdk_iotmanagedintegrations/client/
create_managed_thing.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 [`CreateManagedThing`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`role(Role)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::role) / [`set_role(Option<Role>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::set_role):<br>required: **true**<br><p>The type of device used. This will be the hub controller, cloud device, or AWS IoT device.</p><br>
7    ///   - [`owner(impl Into<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::owner) / [`set_owner(Option<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::set_owner):<br>required: **false**<br><p>Owner of the device, usually an indication of whom the device belongs to. This value should not contain personal identifiable information.</p><br>
8    ///   - [`credential_locker_id(impl Into<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::credential_locker_id) / [`set_credential_locker_id(Option<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::set_credential_locker_id):<br>required: **false**<br><p>The identifier of the credential for the managed thing.</p><br>
9    ///   - [`authentication_material(impl Into<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::authentication_material) / [`set_authentication_material(Option<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::set_authentication_material):<br>required: **true**<br><p>The authentication material defining the device connectivity setup requests. The authentication materials used are the device bar code.</p><br>
10    ///   - [`authentication_material_type(AuthMaterialType)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::authentication_material_type) / [`set_authentication_material_type(Option<AuthMaterialType>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::set_authentication_material_type):<br>required: **true**<br><p>The type of authentication material used for device connectivity setup requests.</p><br>
11    ///   - [`serial_number(impl Into<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::serial_number) / [`set_serial_number(Option<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::set_serial_number):<br>required: **false**<br><p>The serial number of the device.</p><br>
12    ///   - [`brand(impl Into<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::brand) / [`set_brand(Option<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::set_brand):<br>required: **false**<br><p>The brand of the device.</p><br>
13    ///   - [`model(impl Into<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::model) / [`set_model(Option<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::set_model):<br>required: **false**<br><p>The model of the device.</p><br>
14    ///   - [`name(impl Into<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::set_name):<br>required: **false**<br><p>The name of the managed thing representing the physical device.</p><br>
15    ///   - [`capability_report(CapabilityReport)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::capability_report) / [`set_capability_report(Option<CapabilityReport>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::set_capability_report):<br>required: **false**<br><p>A report of the capabilities for the managed thing.</p><br>
16    ///   - [`capability_schemas(CapabilitySchemaItem)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::capability_schemas) / [`set_capability_schemas(Option<Vec::<CapabilitySchemaItem>>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::set_capability_schemas):<br>required: **false**<br><p>The capability schemas that define the functionality and features supported by the managed thing, including device capabilities and their associated properties.</p><br>
17    ///   - [`capabilities(impl Into<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::capabilities) / [`set_capabilities(Option<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::set_capabilities):<br>required: **false**<br><p>The capabilities of the device such as light bulb.</p><br>
18    ///   - [`client_token(impl Into<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::set_client_token):<br>required: **false**<br><p>An idempotency token. If you retry a request that completed successfully initially using the same client token and parameters, then the retry attempt will succeed without performing any further actions.</p><br>
19    ///   - [`classification(impl Into<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::classification) / [`set_classification(Option<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::set_classification):<br>required: **false**<br><p>The classification of the managed thing such as light bulb or thermostat.</p><br>
20    ///   - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::set_tags):<br>required: **false**<br><p>A set of key/value pairs that are used to manage the managed thing.</p><br>
21    ///   - [`meta_data(impl Into<String>, impl Into<String>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::meta_data) / [`set_meta_data(Option<HashMap::<String, String>>)`](crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::set_meta_data):<br>required: **false**<br><p>The metadata for the managed thing.</p><note>  <p>The <code>managedThing</code> <code>metadata</code> parameter is used for associating attributes with a <code>managedThing</code> that can be used for grouping over-the-air (OTA) tasks. Name value pairs in <code>metadata</code> can be used in the <code>OtaTargetQueryString</code> parameter for the <code>CreateOtaTask</code> API operation.</p> </note><br>
22    /// - On success, responds with [`CreateManagedThingOutput`](crate::operation::create_managed_thing::CreateManagedThingOutput) with field(s):
23    ///   - [`id(Option<String>)`](crate::operation::create_managed_thing::CreateManagedThingOutput::id): <p>The id of the managed thing.</p>
24    ///   - [`arn(Option<String>)`](crate::operation::create_managed_thing::CreateManagedThingOutput::arn): <p>The Amazon Resource Name (ARN) of the managed thing.</p>
25    ///   - [`created_at(Option<DateTime>)`](crate::operation::create_managed_thing::CreateManagedThingOutput::created_at): <p>The timestamp value of when the device creation request occurred.</p>
26    /// - On failure, responds with [`SdkError<CreateManagedThingError>`](crate::operation::create_managed_thing::CreateManagedThingError)
27    pub fn create_managed_thing(&self) -> crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder {
28        crate::operation::create_managed_thing::builders::CreateManagedThingFluentBuilder::new(self.handle.clone())
29    }
30}