class Aws::IoTSiteWise::Types::UpdateAssetModelRequest

@note When making an API call, you may pass UpdateAssetModelRequest

data as a hash:

    {
      asset_model_id: "ID", # required
      asset_model_name: "Name", # required
      asset_model_description: "Description",
      asset_model_properties: [
        {
          id: "ID",
          name: "Name", # required
          data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN, STRUCT
          data_type_spec: "Name",
          unit: "PropertyUnit",
          type: { # required
            attribute: {
              default_value: "DefaultValue",
            },
            measurement: {
              processing_config: {
                forwarding_config: { # required
                  state: "DISABLED", # required, accepts DISABLED, ENABLED
                },
              },
            },
            transform: {
              expression: "Expression", # required
              variables: [ # required
                {
                  name: "VariableName", # required
                  value: { # required
                    property_id: "Macro", # required
                    hierarchy_id: "Macro",
                  },
                },
              ],
              processing_config: {
                compute_location: "EDGE", # required, accepts EDGE, CLOUD
                forwarding_config: {
                  state: "DISABLED", # required, accepts DISABLED, ENABLED
                },
              },
            },
            metric: {
              expression: "Expression", # required
              variables: [ # required
                {
                  name: "VariableName", # required
                  value: { # required
                    property_id: "Macro", # required
                    hierarchy_id: "Macro",
                  },
                },
              ],
              window: { # required
                tumbling: {
                  interval: "Interval", # required
                  offset: "Offset",
                },
              },
              processing_config: {
                compute_location: "EDGE", # required, accepts EDGE, CLOUD
              },
            },
          },
        },
      ],
      asset_model_hierarchies: [
        {
          id: "ID",
          name: "Name", # required
          child_asset_model_id: "ID", # required
        },
      ],
      asset_model_composite_models: [
        {
          name: "Name", # required
          description: "Description",
          type: "Name", # required
          properties: [
            {
              id: "ID",
              name: "Name", # required
              data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN, STRUCT
              data_type_spec: "Name",
              unit: "PropertyUnit",
              type: { # required
                attribute: {
                  default_value: "DefaultValue",
                },
                measurement: {
                  processing_config: {
                    forwarding_config: { # required
                      state: "DISABLED", # required, accepts DISABLED, ENABLED
                    },
                  },
                },
                transform: {
                  expression: "Expression", # required
                  variables: [ # required
                    {
                      name: "VariableName", # required
                      value: { # required
                        property_id: "Macro", # required
                        hierarchy_id: "Macro",
                      },
                    },
                  ],
                  processing_config: {
                    compute_location: "EDGE", # required, accepts EDGE, CLOUD
                    forwarding_config: {
                      state: "DISABLED", # required, accepts DISABLED, ENABLED
                    },
                  },
                },
                metric: {
                  expression: "Expression", # required
                  variables: [ # required
                    {
                      name: "VariableName", # required
                      value: { # required
                        property_id: "Macro", # required
                        hierarchy_id: "Macro",
                      },
                    },
                  ],
                  window: { # required
                    tumbling: {
                      interval: "Interval", # required
                      offset: "Offset",
                    },
                  },
                  processing_config: {
                    compute_location: "EDGE", # required, accepts EDGE, CLOUD
                  },
                },
              },
            },
          ],
        },
      ],
      client_token: "ClientToken",
    }

@!attribute [rw] asset_model_id

The ID of the asset model to update.
@return [String]

@!attribute [rw] asset_model_name

A unique, friendly name for the asset model.
@return [String]

@!attribute [rw] asset_model_description

A description for the asset model.
@return [String]

@!attribute [rw] asset_model_properties

The updated property definitions of the asset model. For more
information, see [Asset properties][1] in the *IoT SiteWise User
Guide*.

You can specify up to 200 properties per asset model. For more
information, see [Quotas][2] in the *IoT SiteWise User Guide*.

[1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-properties.html
[2]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html
@return [Array<Types::AssetModelProperty>]

@!attribute [rw] asset_model_hierarchies

The updated hierarchy definitions of the asset model. Each hierarchy
specifies an asset model whose assets can be children of any other
assets created from this asset model. For more information, see
[Asset hierarchies][1] in the *IoT SiteWise User Guide*.

You can specify up to 10 hierarchies per asset model. For more
information, see [Quotas][2] in the *IoT SiteWise User Guide*.

[1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html
[2]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html
@return [Array<Types::AssetModelHierarchy>]

@!attribute [rw] asset_model_composite_models

The composite asset models that are part of this asset model.
Composite asset models are asset models that contain specific
properties. Each composite model has a type that defines the
properties that the composite model supports. Use composite asset
models to define alarms on this asset model.
@return [Array<Types::AssetModelCompositeModel>]

@!attribute [rw] client_token

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.

**A suitable default value is auto-generated.** You should normally
not need to pass this option.
@return [String]

Constants

SENSITIVE