aws-sdk-iotsitewise 1.68.0 → 1.70.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -459,23 +459,6 @@ module Aws::IoTSiteWise
459
459
  # composite model definition is applied to all assets created from the
460
460
  # asset model.
461
461
  #
462
- # @!attribute [rw] name
463
- # The name of the composite model.
464
- # @return [String]
465
- #
466
- # @!attribute [rw] description
467
- # The description of the composite model.
468
- # @return [String]
469
- #
470
- # @!attribute [rw] type
471
- # The type of the composite model. For alarm composite models, this
472
- # type is `AWS/ALARM`.
473
- # @return [String]
474
- #
475
- # @!attribute [rw] properties
476
- # The asset property definitions for this composite model.
477
- # @return [Array<Types::AssetModelPropertyDefinition>]
478
- #
479
462
  # @!attribute [rw] id
480
463
  # The ID to assign to the composite model, if desired. IoT SiteWise
481
464
  # automatically generates a unique ID for you, so this parameter is
@@ -495,13 +478,30 @@ module Aws::IoTSiteWise
495
478
  # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
496
479
  # @return [String]
497
480
  #
481
+ # @!attribute [rw] name
482
+ # The name of the composite model.
483
+ # @return [String]
484
+ #
485
+ # @!attribute [rw] description
486
+ # The description of the composite model.
487
+ # @return [String]
488
+ #
489
+ # @!attribute [rw] type
490
+ # The type of the composite model. For alarm composite models, this
491
+ # type is `AWS/ALARM`.
492
+ # @return [String]
493
+ #
494
+ # @!attribute [rw] properties
495
+ # The asset property definitions for this composite model.
496
+ # @return [Array<Types::AssetModelPropertyDefinition>]
497
+ #
498
498
  class AssetModelCompositeModelDefinition < Struct.new(
499
+ :id,
500
+ :external_id,
499
501
  :name,
500
502
  :description,
501
503
  :type,
502
- :properties,
503
- :id,
504
- :external_id)
504
+ :properties)
505
505
  SENSITIVE = []
506
506
  include Aws::Structure
507
507
  end
@@ -595,6 +595,21 @@ module Aws::IoTSiteWise
595
595
  # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
596
596
  # @return [String]
597
597
  #
598
+ # @!attribute [rw] external_id
599
+ # The external ID (if any) provided in the [CreateAssetModel][1] or
600
+ # [UpdateAssetModel][2] operation. You can assign an external ID by
601
+ # specifying this value as part of a call to [UpdateAssetModel][2].
602
+ # However, you can't change the external ID if one is already
603
+ # assigned. For more information, see [Using external IDs][3] in the
604
+ # *IoT SiteWise User Guide*.
605
+ #
606
+ #
607
+ #
608
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_CreateAssetModel.html
609
+ # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetModel.html
610
+ # [3]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
611
+ # @return [String]
612
+ #
598
613
  # @!attribute [rw] name
599
614
  # The name of the asset model hierarchy that you specify by using the
600
615
  # [CreateAssetModel][1] or [UpdateAssetModel][2] API operation.
@@ -621,26 +636,11 @@ module Aws::IoTSiteWise
621
636
  # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
622
637
  # @return [String]
623
638
  #
624
- # @!attribute [rw] external_id
625
- # The external ID (if any) provided in the [CreateAssetModel][1] or
626
- # [UpdateAssetModel][2] operation. You can assign an external ID by
627
- # specifying this value as part of a call to [UpdateAssetModel][2].
628
- # However, you can't change the external ID if one is already
629
- # assigned. For more information, see [Using external IDs][3] in the
630
- # *IoT SiteWise User Guide*.
631
- #
632
- #
633
- #
634
- # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_CreateAssetModel.html
635
- # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetModel.html
636
- # [3]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
637
- # @return [String]
638
- #
639
639
  class AssetModelHierarchy < Struct.new(
640
640
  :id,
641
+ :external_id,
641
642
  :name,
642
- :child_asset_model_id,
643
- :external_id)
643
+ :child_asset_model_id)
644
644
  SENSITIVE = []
645
645
  include Aws::Structure
646
646
  end
@@ -649,6 +649,25 @@ module Aws::IoTSiteWise
649
649
  # asset model hierarchy determines the kind (or type) of asset that can
650
650
  # belong to a hierarchy.
651
651
  #
652
+ # @!attribute [rw] id
653
+ # The ID to assign to the asset model hierarchy, if desired. IoT
654
+ # SiteWise automatically generates a unique ID for you, so this
655
+ # parameter is never required. However, if you prefer to supply your
656
+ # own ID instead, you can specify it here in UUID format. If you
657
+ # specify your own ID, it must be globally unique.
658
+ # @return [String]
659
+ #
660
+ # @!attribute [rw] external_id
661
+ # An external ID to assign to the asset model hierarchy. The external
662
+ # ID must be unique among asset model hierarchies within this asset
663
+ # model. For more information, see [Using external IDs][1] in the *IoT
664
+ # SiteWise User Guide*.
665
+ #
666
+ #
667
+ #
668
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
669
+ # @return [String]
670
+ #
652
671
  # @!attribute [rw] name
653
672
  # The name of the asset model hierarchy definition (as specified in
654
673
  # the [CreateAssetModel][1] or [UpdateAssetModel][2] API operation).
@@ -670,30 +689,11 @@ module Aws::IoTSiteWise
670
689
  # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
671
690
  # @return [String]
672
691
  #
673
- # @!attribute [rw] id
674
- # The ID to assign to the asset model hierarchy, if desired. IoT
675
- # SiteWise automatically generates a unique ID for you, so this
676
- # parameter is never required. However, if you prefer to supply your
677
- # own ID instead, you can specify it here in UUID format. If you
678
- # specify your own ID, it must be globally unique.
679
- # @return [String]
680
- #
681
- # @!attribute [rw] external_id
682
- # An external ID to assign to the asset model hierarchy. The external
683
- # ID must be unique among asset model hierarchies within this asset
684
- # model. For more information, see [Using external IDs][1] in the *IoT
685
- # SiteWise User Guide*.
686
- #
687
- #
688
- #
689
- # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
690
- # @return [String]
691
- #
692
692
  class AssetModelHierarchyDefinition < Struct.new(
693
- :name,
694
- :child_asset_model_id,
695
693
  :id,
696
- :external_id)
694
+ :external_id,
695
+ :name,
696
+ :child_asset_model_id)
697
697
  SENSITIVE = []
698
698
  include Aws::Structure
699
699
  end
@@ -722,6 +722,21 @@ module Aws::IoTSiteWise
722
722
  # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
723
723
  # @return [String]
724
724
  #
725
+ # @!attribute [rw] external_id
726
+ # The external ID (if any) provided in the [CreateAssetModel][1] or
727
+ # [UpdateAssetModel][2] operation. You can assign an external ID by
728
+ # specifying this value as part of a call to [UpdateAssetModel][2].
729
+ # However, you can't change the external ID if one is already
730
+ # assigned. For more information, see [Using external IDs][3] in the
731
+ # *IoT SiteWise User Guide*.
732
+ #
733
+ #
734
+ #
735
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_CreateAssetModel.html
736
+ # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetModel.html
737
+ # [3]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
738
+ # @return [String]
739
+ #
725
740
  # @!attribute [rw] name
726
741
  # The name of the asset model property.
727
742
  # @return [String]
@@ -748,30 +763,15 @@ module Aws::IoTSiteWise
748
763
  # model.
749
764
  # @return [Array<Types::AssetModelPropertyPathSegment>]
750
765
  #
751
- # @!attribute [rw] external_id
752
- # The external ID (if any) provided in the [CreateAssetModel][1] or
753
- # [UpdateAssetModel][2] operation. You can assign an external ID by
754
- # specifying this value as part of a call to [UpdateAssetModel][2].
755
- # However, you can't change the external ID if one is already
756
- # assigned. For more information, see [Using external IDs][3] in the
757
- # *IoT SiteWise User Guide*.
758
- #
759
- #
760
- #
761
- # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_CreateAssetModel.html
762
- # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetModel.html
763
- # [3]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
764
- # @return [String]
765
- #
766
766
  class AssetModelProperty < Struct.new(
767
767
  :id,
768
+ :external_id,
768
769
  :name,
769
770
  :data_type,
770
771
  :data_type_spec,
771
772
  :unit,
772
773
  :type,
773
- :path,
774
- :external_id)
774
+ :path)
775
775
  SENSITIVE = []
776
776
  include Aws::Structure
777
777
  end
@@ -779,6 +779,25 @@ module Aws::IoTSiteWise
779
779
  # Contains an asset model property definition. This property definition
780
780
  # is applied to all assets created from the asset model.
781
781
  #
782
+ # @!attribute [rw] id
783
+ # The ID to assign to the asset model property, if desired. IoT
784
+ # SiteWise automatically generates a unique ID for you, so this
785
+ # parameter is never required. However, if you prefer to supply your
786
+ # own ID instead, you can specify it here in UUID format. If you
787
+ # specify your own ID, it must be globally unique.
788
+ # @return [String]
789
+ #
790
+ # @!attribute [rw] external_id
791
+ # An external ID to assign to the property definition. The external ID
792
+ # must be unique among property definitions within this asset model.
793
+ # For more information, see [Using external IDs][1] in the *IoT
794
+ # SiteWise User Guide*.
795
+ #
796
+ #
797
+ #
798
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
799
+ # @return [String]
800
+ #
782
801
  # @!attribute [rw] name
783
802
  # The name of the property definition.
784
803
  # @return [String]
@@ -808,33 +827,14 @@ module Aws::IoTSiteWise
808
827
  # specify one type in a property definition.
809
828
  # @return [Types::PropertyType]
810
829
  #
811
- # @!attribute [rw] id
812
- # The ID to assign to the asset model property, if desired. IoT
813
- # SiteWise automatically generates a unique ID for you, so this
814
- # parameter is never required. However, if you prefer to supply your
815
- # own ID instead, you can specify it here in UUID format. If you
816
- # specify your own ID, it must be globally unique.
817
- # @return [String]
818
- #
819
- # @!attribute [rw] external_id
820
- # An external ID to assign to the property definition. The external ID
821
- # must be unique among property definitions within this asset model.
822
- # For more information, see [Using external IDs][1] in the *IoT
823
- # SiteWise User Guide*.
824
- #
825
- #
826
- #
827
- # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
828
- # @return [String]
829
- #
830
830
  class AssetModelPropertyDefinition < Struct.new(
831
+ :id,
832
+ :external_id,
831
833
  :name,
832
834
  :data_type,
833
835
  :data_type_spec,
834
836
  :unit,
835
- :type,
836
- :id,
837
- :external_id)
837
+ :type)
838
838
  SENSITIVE = []
839
839
  include Aws::Structure
840
840
  end
@@ -863,6 +863,15 @@ module Aws::IoTSiteWise
863
863
  # The ID of the property.
864
864
  # @return [String]
865
865
  #
866
+ # @!attribute [rw] external_id
867
+ # The external ID of the property. For more information, see [Using
868
+ # external IDs][1] in the *IoT SiteWise User Guide*.
869
+ #
870
+ #
871
+ #
872
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
873
+ # @return [String]
874
+ #
866
875
  # @!attribute [rw] name
867
876
  # The name of the property.
868
877
  # @return [String]
@@ -895,25 +904,16 @@ module Aws::IoTSiteWise
895
904
  # model.
896
905
  # @return [Array<Types::AssetModelPropertyPathSegment>]
897
906
  #
898
- # @!attribute [rw] external_id
899
- # The external ID of the property. For more information, see [Using
900
- # external IDs][1] in the *IoT SiteWise User Guide*.
901
- #
902
- #
903
- #
904
- # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
905
- # @return [String]
906
- #
907
907
  class AssetModelPropertySummary < Struct.new(
908
908
  :id,
909
+ :external_id,
909
910
  :name,
910
911
  :data_type,
911
912
  :data_type_spec,
912
913
  :unit,
913
914
  :type,
914
915
  :asset_model_composite_model_id,
915
- :path,
916
- :external_id)
916
+ :path)
917
917
  SENSITIVE = []
918
918
  include Aws::Structure
919
919
  end
@@ -947,6 +947,15 @@ module Aws::IoTSiteWise
947
947
  # The ID of the asset model (used with IoT SiteWise API operations).
948
948
  # @return [String]
949
949
  #
950
+ # @!attribute [rw] external_id
951
+ # The external ID of the asset model. For more information, see [Using
952
+ # external IDs][1] in the *IoT SiteWise User Guide*.
953
+ #
954
+ #
955
+ #
956
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
957
+ # @return [String]
958
+ #
950
959
  # @!attribute [rw] arn
951
960
  # The [ARN][1] of the asset model, which has the following format.
952
961
  #
@@ -961,6 +970,18 @@ module Aws::IoTSiteWise
961
970
  # The name of the asset model.
962
971
  # @return [String]
963
972
  #
973
+ # @!attribute [rw] asset_model_type
974
+ # The type of asset model.
975
+ #
976
+ # * **ASSET\_MODEL** – (default) An asset model that you can use to
977
+ # create assets. Can't be included as a component in another asset
978
+ # model.
979
+ #
980
+ # * **COMPONENT\_MODEL** – A reusable component that you can include
981
+ # in the composite models of other asset models. You can't create
982
+ # assets directly from this type of asset model.
983
+ # @return [String]
984
+ #
964
985
  # @!attribute [rw] description
965
986
  # The asset model description.
966
987
  # @return [String]
@@ -977,37 +998,21 @@ module Aws::IoTSiteWise
977
998
  # The current status of the asset model.
978
999
  # @return [Types::AssetModelStatus]
979
1000
  #
980
- # @!attribute [rw] asset_model_type
981
- # The type of asset model.
982
- #
983
- # * **ASSET\_MODEL** – (default) An asset model that you can use to
984
- # create assets. Can't be included as a component in another asset
985
- # model.
986
- #
987
- # * **COMPONENT\_MODEL** – A reusable component that you can include
988
- # in the composite models of other asset models. You can't create
989
- # assets directly from this type of asset model.
990
- # @return [String]
991
- #
992
- # @!attribute [rw] external_id
993
- # The external ID of the asset model. For more information, see [Using
994
- # external IDs][1] in the *IoT SiteWise User Guide*.
995
- #
996
- #
997
- #
998
- # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
1001
+ # @!attribute [rw] version
1002
+ # The version number of the asset model.
999
1003
  # @return [String]
1000
1004
  #
1001
1005
  class AssetModelSummary < Struct.new(
1002
1006
  :id,
1007
+ :external_id,
1003
1008
  :arn,
1004
1009
  :name,
1010
+ :asset_model_type,
1005
1011
  :description,
1006
1012
  :creation_date,
1007
1013
  :last_update_date,
1008
1014
  :status,
1009
- :asset_model_type,
1010
- :external_id)
1015
+ :version)
1011
1016
  SENSITIVE = []
1012
1017
  include Aws::Structure
1013
1018
  end
@@ -2547,12 +2552,7 @@ module Aws::IoTSiteWise
2547
2552
  end
2548
2553
 
2549
2554
  # @!attribute [rw] asset_model_id
2550
- # The ID of the asset model this composite model is a part of.
2551
- # @return [String]
2552
- #
2553
- # @!attribute [rw] parent_asset_model_composite_model_id
2554
- # The ID of the parent composite model in this asset model
2555
- # relationship.
2555
+ # The ID of the asset model this composite model is a part of.
2556
2556
  # @return [String]
2557
2557
  #
2558
2558
  # @!attribute [rw] asset_model_composite_model_external_id
@@ -2564,6 +2564,11 @@ module Aws::IoTSiteWise
2564
2564
  # the model or property from the created model it's a part of.
2565
2565
  # @return [String]
2566
2566
  #
2567
+ # @!attribute [rw] parent_asset_model_composite_model_id
2568
+ # The ID of the parent composite model in this asset model
2569
+ # relationship.
2570
+ # @return [String]
2571
+ #
2567
2572
  # @!attribute [rw] asset_model_composite_model_id
2568
2573
  # The ID of the composite model. IoT SiteWise automatically generates
2569
2574
  # a unique ID for you, so this parameter is never required. However,
@@ -2613,17 +2618,44 @@ module Aws::IoTSiteWise
2613
2618
  # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html
2614
2619
  # @return [Array<Types::AssetModelPropertyDefinition>]
2615
2620
  #
2621
+ # @!attribute [rw] if_match
2622
+ # The expected current entity tag (ETag) for the asset model’s latest
2623
+ # or active version (specified using `matchForVersionType`). The
2624
+ # create request is rejected if the tag does not match the latest or
2625
+ # active version's current entity tag. See [Optimistic locking for
2626
+ # asset model writes][1] in the *IoT SiteWise User Guide*.
2627
+ #
2628
+ #
2629
+ #
2630
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/opt-locking-for-model.html
2631
+ # @return [String]
2632
+ #
2633
+ # @!attribute [rw] if_none_match
2634
+ # Accepts ***** to reject the create request if an active version
2635
+ # (specified using `matchForVersionType` as `ACTIVE`) already exists
2636
+ # for the asset model.
2637
+ # @return [String]
2638
+ #
2639
+ # @!attribute [rw] match_for_version_type
2640
+ # Specifies the asset model version type (`LATEST` or `ACTIVE`) used
2641
+ # in conjunction with `If-Match` or `If-None-Match` headers to
2642
+ # determine the target ETag for the create operation.
2643
+ # @return [String]
2644
+ #
2616
2645
  class CreateAssetModelCompositeModelRequest < Struct.new(
2617
2646
  :asset_model_id,
2618
- :parent_asset_model_composite_model_id,
2619
2647
  :asset_model_composite_model_external_id,
2648
+ :parent_asset_model_composite_model_id,
2620
2649
  :asset_model_composite_model_id,
2621
2650
  :asset_model_composite_model_description,
2622
2651
  :asset_model_composite_model_name,
2623
2652
  :asset_model_composite_model_type,
2624
2653
  :client_token,
2625
2654
  :composed_asset_model_id,
2626
- :asset_model_composite_model_properties)
2655
+ :asset_model_composite_model_properties,
2656
+ :if_match,
2657
+ :if_none_match,
2658
+ :match_for_version_type)
2627
2659
  SENSITIVE = []
2628
2660
  include Aws::Structure
2629
2661
  end
@@ -2659,6 +2691,37 @@ module Aws::IoTSiteWise
2659
2691
  # A unique name for the asset model.
2660
2692
  # @return [String]
2661
2693
  #
2694
+ # @!attribute [rw] asset_model_type
2695
+ # The type of asset model.
2696
+ #
2697
+ # * **ASSET\_MODEL** – (default) An asset model that you can use to
2698
+ # create assets. Can't be included as a component in another asset
2699
+ # model.
2700
+ #
2701
+ # * **COMPONENT\_MODEL** – A reusable component that you can include
2702
+ # in the composite models of other asset models. You can't create
2703
+ # assets directly from this type of asset model.
2704
+ # @return [String]
2705
+ #
2706
+ # @!attribute [rw] asset_model_id
2707
+ # The ID to assign to the asset model, if desired. IoT SiteWise
2708
+ # automatically generates a unique ID for you, so this parameter is
2709
+ # never required. However, if you prefer to supply your own ID
2710
+ # instead, you can specify it here in UUID format. If you specify your
2711
+ # own ID, it must be globally unique.
2712
+ # @return [String]
2713
+ #
2714
+ # @!attribute [rw] asset_model_external_id
2715
+ # An external ID to assign to the asset model. The external ID must be
2716
+ # unique within your Amazon Web Services account. For more
2717
+ # information, see [Using external IDs][1] in the *IoT SiteWise User
2718
+ # Guide*.
2719
+ #
2720
+ #
2721
+ #
2722
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
2723
+ # @return [String]
2724
+ #
2662
2725
  # @!attribute [rw] asset_model_description
2663
2726
  # A description for the asset model.
2664
2727
  # @return [String]
@@ -2731,48 +2794,17 @@ module Aws::IoTSiteWise
2731
2794
  # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html
2732
2795
  # @return [Hash<String,String>]
2733
2796
  #
2734
- # @!attribute [rw] asset_model_id
2735
- # The ID to assign to the asset model, if desired. IoT SiteWise
2736
- # automatically generates a unique ID for you, so this parameter is
2737
- # never required. However, if you prefer to supply your own ID
2738
- # instead, you can specify it here in UUID format. If you specify your
2739
- # own ID, it must be globally unique.
2740
- # @return [String]
2741
- #
2742
- # @!attribute [rw] asset_model_external_id
2743
- # An external ID to assign to the asset model. The external ID must be
2744
- # unique within your Amazon Web Services account. For more
2745
- # information, see [Using external IDs][1] in the *IoT SiteWise User
2746
- # Guide*.
2747
- #
2748
- #
2749
- #
2750
- # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
2751
- # @return [String]
2752
- #
2753
- # @!attribute [rw] asset_model_type
2754
- # The type of asset model.
2755
- #
2756
- # * **ASSET\_MODEL** – (default) An asset model that you can use to
2757
- # create assets. Can't be included as a component in another asset
2758
- # model.
2759
- #
2760
- # * **COMPONENT\_MODEL** – A reusable component that you can include
2761
- # in the composite models of other asset models. You can't create
2762
- # assets directly from this type of asset model.
2763
- # @return [String]
2764
- #
2765
2797
  class CreateAssetModelRequest < Struct.new(
2766
2798
  :asset_model_name,
2799
+ :asset_model_type,
2800
+ :asset_model_id,
2801
+ :asset_model_external_id,
2767
2802
  :asset_model_description,
2768
2803
  :asset_model_properties,
2769
2804
  :asset_model_hierarchies,
2770
2805
  :asset_model_composite_models,
2771
2806
  :client_token,
2772
- :tags,
2773
- :asset_model_id,
2774
- :asset_model_external_id,
2775
- :asset_model_type)
2807
+ :tags)
2776
2808
  SENSITIVE = []
2777
2809
  include Aws::Structure
2778
2810
  end
@@ -3471,10 +3503,37 @@ module Aws::IoTSiteWise
3471
3503
  # not need to pass this option.
3472
3504
  # @return [String]
3473
3505
  #
3506
+ # @!attribute [rw] if_match
3507
+ # The expected current entity tag (ETag) for the asset model’s latest
3508
+ # or active version (specified using `matchForVersionType`). The
3509
+ # delete request is rejected if the tag does not match the latest or
3510
+ # active version's current entity tag. See [Optimistic locking for
3511
+ # asset model writes][1] in the *IoT SiteWise User Guide*.
3512
+ #
3513
+ #
3514
+ #
3515
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/opt-locking-for-model.html
3516
+ # @return [String]
3517
+ #
3518
+ # @!attribute [rw] if_none_match
3519
+ # Accepts ***** to reject the delete request if an active version
3520
+ # (specified using `matchForVersionType` as `ACTIVE`) already exists
3521
+ # for the asset model.
3522
+ # @return [String]
3523
+ #
3524
+ # @!attribute [rw] match_for_version_type
3525
+ # Specifies the asset model version type (`LATEST` or `ACTIVE`) used
3526
+ # in conjunction with `If-Match` or `If-None-Match` headers to
3527
+ # determine the target ETag for the delete operation.
3528
+ # @return [String]
3529
+ #
3474
3530
  class DeleteAssetModelCompositeModelRequest < Struct.new(
3475
3531
  :asset_model_id,
3476
3532
  :asset_model_composite_model_id,
3477
- :client_token)
3533
+ :client_token,
3534
+ :if_match,
3535
+ :if_none_match,
3536
+ :match_for_version_type)
3478
3537
  SENSITIVE = []
3479
3538
  include Aws::Structure
3480
3539
  end
@@ -3515,9 +3574,36 @@ module Aws::IoTSiteWise
3515
3574
  # not need to pass this option.
3516
3575
  # @return [String]
3517
3576
  #
3577
+ # @!attribute [rw] if_match
3578
+ # The expected current entity tag (ETag) for the asset model’s latest
3579
+ # or active version (specified using `matchForVersionType`). The
3580
+ # delete request is rejected if the tag does not match the latest or
3581
+ # active version's current entity tag. See [Optimistic locking for
3582
+ # asset model writes][1] in the *IoT SiteWise User Guide*.
3583
+ #
3584
+ #
3585
+ #
3586
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/opt-locking-for-model.html
3587
+ # @return [String]
3588
+ #
3589
+ # @!attribute [rw] if_none_match
3590
+ # Accepts ***** to reject the delete request if an active version
3591
+ # (specified using `matchForVersionType` as `ACTIVE`) already exists
3592
+ # for the asset model.
3593
+ # @return [String]
3594
+ #
3595
+ # @!attribute [rw] match_for_version_type
3596
+ # Specifies the asset model version type (`LATEST` or `ACTIVE`) used
3597
+ # in conjunction with `If-Match` or `If-None-Match` headers to
3598
+ # determine the target ETag for the delete operation.
3599
+ # @return [String]
3600
+ #
3518
3601
  class DeleteAssetModelRequest < Struct.new(
3519
3602
  :asset_model_id,
3520
- :client_token)
3603
+ :client_token,
3604
+ :if_match,
3605
+ :if_none_match,
3606
+ :match_for_version_type)
3521
3607
  SENSITIVE = []
3522
3608
  include Aws::Structure
3523
3609
  end
@@ -3915,9 +4001,21 @@ module Aws::IoTSiteWise
3915
4001
  # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
3916
4002
  # @return [String]
3917
4003
  #
4004
+ # @!attribute [rw] asset_model_version
4005
+ # The version alias that specifies the latest or active version of the
4006
+ # asset model. The details are returned in the response. The default
4007
+ # value is `LATEST`. See [ Asset model versions][1] in the *IoT
4008
+ # SiteWise User Guide*.
4009
+ #
4010
+ #
4011
+ #
4012
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/model-active-version.html
4013
+ # @return [String]
4014
+ #
3918
4015
  class DescribeAssetModelCompositeModelRequest < Struct.new(
3919
4016
  :asset_model_id,
3920
- :asset_model_composite_model_id)
4017
+ :asset_model_composite_model_id,
4018
+ :asset_model_version)
3921
4019
  SENSITIVE = []
3922
4020
  include Aws::Structure
3923
4021
  end
@@ -4005,9 +4103,21 @@ module Aws::IoTSiteWise
4005
4103
  # Whether or not to exclude asset model properties from the response.
4006
4104
  # @return [Boolean]
4007
4105
  #
4106
+ # @!attribute [rw] asset_model_version
4107
+ # The version alias that specifies the latest or active version of the
4108
+ # asset model. The details are returned in the response. The default
4109
+ # value is `LATEST`. See [ Asset model versions][1] in the *IoT
4110
+ # SiteWise User Guide*.
4111
+ #
4112
+ #
4113
+ #
4114
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/model-active-version.html
4115
+ # @return [String]
4116
+ #
4008
4117
  class DescribeAssetModelRequest < Struct.new(
4009
4118
  :asset_model_id,
4010
- :exclude_properties)
4119
+ :exclude_properties,
4120
+ :asset_model_version)
4011
4121
  SENSITIVE = []
4012
4122
  include Aws::Structure
4013
4123
  end
@@ -4016,6 +4126,10 @@ module Aws::IoTSiteWise
4016
4126
  # The ID of the asset model, in UUID format.
4017
4127
  # @return [String]
4018
4128
  #
4129
+ # @!attribute [rw] asset_model_external_id
4130
+ # The external ID of the asset model, if any.
4131
+ # @return [String]
4132
+ #
4019
4133
  # @!attribute [rw] asset_model_arn
4020
4134
  # The [ARN][1] of the asset model, which has the following format.
4021
4135
  #
@@ -4030,6 +4144,18 @@ module Aws::IoTSiteWise
4030
4144
  # The name of the asset model.
4031
4145
  # @return [String]
4032
4146
  #
4147
+ # @!attribute [rw] asset_model_type
4148
+ # The type of asset model.
4149
+ #
4150
+ # * **ASSET\_MODEL** – (default) An asset model that you can use to
4151
+ # create assets. Can't be included as a component in another asset
4152
+ # model.
4153
+ #
4154
+ # * **COMPONENT\_MODEL** – A reusable component that you can include
4155
+ # in the composite models of other asset models. You can't create
4156
+ # assets directly from this type of asset model.
4157
+ # @return [String]
4158
+ #
4033
4159
  # @!attribute [rw] asset_model_description
4034
4160
  # The asset model's description.
4035
4161
  # @return [String]
@@ -4054,6 +4180,11 @@ module Aws::IoTSiteWise
4054
4180
  # those with those of type `AWS/ALARMS`.
4055
4181
  # @return [Array<Types::AssetModelCompositeModel>]
4056
4182
  #
4183
+ # @!attribute [rw] asset_model_composite_model_summaries
4184
+ # The list of the immediate child custom composite model summaries for
4185
+ # the asset model.
4186
+ # @return [Array<Types::AssetModelCompositeModelSummary>]
4187
+ #
4057
4188
  # @!attribute [rw] asset_model_creation_date
4058
4189
  # The date the asset model was created, in Unix epoch time.
4059
4190
  # @return [Time]
@@ -4067,41 +4198,45 @@ module Aws::IoTSiteWise
4067
4198
  # any error message.
4068
4199
  # @return [Types::AssetModelStatus]
4069
4200
  #
4070
- # @!attribute [rw] asset_model_type
4071
- # The type of asset model.
4201
+ # @!attribute [rw] asset_model_version
4202
+ # The version of the asset model. See [ Asset model versions][1] in
4203
+ # the *IoT SiteWise User Guide*.
4072
4204
  #
4073
- # * **ASSET\_MODEL** – (default) An asset model that you can use to
4074
- # create assets. Can't be included as a component in another asset
4075
- # model.
4076
4205
  #
4077
- # * **COMPONENT\_MODEL** – A reusable component that you can include
4078
- # in the composite models of other asset models. You can't create
4079
- # assets directly from this type of asset model.
4206
+ #
4207
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/model-active-version.html
4080
4208
  # @return [String]
4081
4209
  #
4082
- # @!attribute [rw] asset_model_composite_model_summaries
4083
- # The list of the immediate child custom composite model summaries for
4084
- # the asset model.
4085
- # @return [Array<Types::AssetModelCompositeModelSummary>]
4210
+ # @!attribute [rw] e_tag
4211
+ # The entity tag (ETag) is a hash of the retrieved version of the
4212
+ # asset model. It's used to make concurrent updates safely to the
4213
+ # resource. See [Optimistic locking for asset model writes][1] in the
4214
+ # *IoT SiteWise User Guide*.
4086
4215
  #
4087
- # @!attribute [rw] asset_model_external_id
4088
- # The external ID of the asset model, if any.
4216
+ # See [ Optimistic locking for asset model writes][1] in the *IoT
4217
+ # SiteWise User Guide*.
4218
+ #
4219
+ #
4220
+ #
4221
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/opt-locking-for-model.html
4089
4222
  # @return [String]
4090
4223
  #
4091
4224
  class DescribeAssetModelResponse < Struct.new(
4092
4225
  :asset_model_id,
4226
+ :asset_model_external_id,
4093
4227
  :asset_model_arn,
4094
4228
  :asset_model_name,
4229
+ :asset_model_type,
4095
4230
  :asset_model_description,
4096
4231
  :asset_model_properties,
4097
4232
  :asset_model_hierarchies,
4098
4233
  :asset_model_composite_models,
4234
+ :asset_model_composite_model_summaries,
4099
4235
  :asset_model_creation_date,
4100
4236
  :asset_model_last_update_date,
4101
4237
  :asset_model_status,
4102
- :asset_model_type,
4103
- :asset_model_composite_model_summaries,
4104
- :asset_model_external_id)
4238
+ :asset_model_version,
4239
+ :e_tag)
4105
4240
  SENSITIVE = []
4106
4241
  include Aws::Structure
4107
4242
  end
@@ -6204,10 +6339,22 @@ module Aws::IoTSiteWise
6204
6339
  # Default: 50
6205
6340
  # @return [Integer]
6206
6341
  #
6342
+ # @!attribute [rw] asset_model_version
6343
+ # The version alias that specifies the latest or active version of the
6344
+ # asset model. The details are returned in the response. The default
6345
+ # value is `LATEST`. See [ Asset model versions][1] in the *IoT
6346
+ # SiteWise User Guide*.
6347
+ #
6348
+ #
6349
+ #
6350
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/model-active-version.html
6351
+ # @return [String]
6352
+ #
6207
6353
  class ListAssetModelCompositeModelsRequest < Struct.new(
6208
6354
  :asset_model_id,
6209
6355
  :next_token,
6210
- :max_results)
6356
+ :max_results,
6357
+ :asset_model_version)
6211
6358
  SENSITIVE = []
6212
6359
  include Aws::Structure
6213
6360
  end
@@ -6261,11 +6408,23 @@ module Aws::IoTSiteWise
6261
6408
  # Default: `BASE`
6262
6409
  # @return [String]
6263
6410
  #
6411
+ # @!attribute [rw] asset_model_version
6412
+ # The version alias that specifies the latest or active version of the
6413
+ # asset model. The details are returned in the response. The default
6414
+ # value is `LATEST`. See [ Asset model versions][1] in the *IoT
6415
+ # SiteWise User Guide*.
6416
+ #
6417
+ #
6418
+ #
6419
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/model-active-version.html
6420
+ # @return [String]
6421
+ #
6264
6422
  class ListAssetModelPropertiesRequest < Struct.new(
6265
6423
  :asset_model_id,
6266
6424
  :next_token,
6267
6425
  :max_results,
6268
- :filter)
6426
+ :filter,
6427
+ :asset_model_version)
6269
6428
  SENSITIVE = []
6270
6429
  include Aws::Structure
6271
6430
  end
@@ -6287,6 +6446,18 @@ module Aws::IoTSiteWise
6287
6446
  include Aws::Structure
6288
6447
  end
6289
6448
 
6449
+ # @!attribute [rw] asset_model_types
6450
+ # The type of asset model. If you don't provide an `assetModelTypes`,
6451
+ # all types of asset models are returned.
6452
+ #
6453
+ # * **ASSET\_MODEL** – An asset model that you can use to create
6454
+ # assets. Can't be included as a component in another asset model.
6455
+ #
6456
+ # * **COMPONENT\_MODEL** – A reusable component that you can include
6457
+ # in the composite models of other asset models. You can't create
6458
+ # assets directly from this type of asset model.
6459
+ # @return [Array<String>]
6460
+ #
6290
6461
  # @!attribute [rw] next_token
6291
6462
  # The token to be used for the next set of paginated results.
6292
6463
  # @return [String]
@@ -6297,22 +6468,22 @@ module Aws::IoTSiteWise
6297
6468
  # Default: 50
6298
6469
  # @return [Integer]
6299
6470
  #
6300
- # @!attribute [rw] asset_model_types
6301
- # The type of asset model.
6471
+ # @!attribute [rw] asset_model_version
6472
+ # The version alias that specifies the latest or active version of the
6473
+ # asset model. The details are returned in the response. The default
6474
+ # value is `LATEST`. See [ Asset model versions][1] in the *IoT
6475
+ # SiteWise User Guide*.
6302
6476
  #
6303
- # * **ASSET\_MODEL** – (default) An asset model that you can use to
6304
- # create assets. Can't be included as a component in another asset
6305
- # model.
6306
6477
  #
6307
- # * **COMPONENT\_MODEL** – A reusable component that you can include
6308
- # in the composite models of other asset models. You can't create
6309
- # assets directly from this type of asset model.
6310
- # @return [Array<String>]
6478
+ #
6479
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/model-active-version.html
6480
+ # @return [String]
6311
6481
  #
6312
6482
  class ListAssetModelsRequest < Struct.new(
6483
+ :asset_model_types,
6313
6484
  :next_token,
6314
6485
  :max_results,
6315
- :asset_model_types)
6486
+ :asset_model_version)
6316
6487
  SENSITIVE = []
6317
6488
  include Aws::Structure
6318
6489
  end
@@ -6521,24 +6692,22 @@ module Aws::IoTSiteWise
6521
6692
  # @return [String]
6522
6693
  #
6523
6694
  # @!attribute [rw] hierarchy_id
6695
+ # (Optional) If you don't provide a `hierarchyId`, all the immediate
6696
+ # assets in the `traversalDirection` will be returned.
6697
+ #
6524
6698
  # The ID of the hierarchy by which child assets are associated to the
6525
6699
  # asset. (This can be either the actual ID in UUID format, or else
6526
6700
  # `externalId:` followed by the external ID, if it has one. For more
6527
6701
  # information, see [Referencing objects with external IDs][1] in the
6528
- # *IoT SiteWise User Guide*.) To find a hierarchy ID, use the
6529
- # [DescribeAsset][2] or [DescribeAssetModel][3] operations. This
6530
- # parameter is required if you choose `CHILD` for
6531
- # `traversalDirection`.
6702
+ # *IoT SiteWise User Guide*.)
6532
6703
  #
6533
- # For more information, see [Asset hierarchies][4] in the *IoT
6704
+ # For more information, see [Asset hierarchies][2] in the *IoT
6534
6705
  # SiteWise User Guide*.
6535
6706
  #
6536
6707
  #
6537
6708
  #
6538
6709
  # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
6539
- # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAsset.html
6540
- # [3]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAssetModel.html
6541
- # [4]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html
6710
+ # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html
6542
6711
  # @return [String]
6543
6712
  #
6544
6713
  # @!attribute [rw] traversal_direction
@@ -6546,8 +6715,7 @@ module Aws::IoTSiteWise
6546
6715
  # options:
6547
6716
  #
6548
6717
  # * `CHILD` – The list includes all child assets associated to the
6549
- # asset. The `hierarchyId` parameter is required if you choose
6550
- # `CHILD`.
6718
+ # asset.
6551
6719
  #
6552
6720
  # * `PARENT` – The list includes the asset's parent asset.
6553
6721
  #
@@ -7196,6 +7364,30 @@ module Aws::IoTSiteWise
7196
7364
  include Aws::Structure
7197
7365
  end
7198
7366
 
7367
+ # The precondition in one or more of the request-header fields evaluated
7368
+ # to `FALSE`.
7369
+ #
7370
+ # @!attribute [rw] message
7371
+ # @return [String]
7372
+ #
7373
+ # @!attribute [rw] resource_id
7374
+ # The ID of the resource on which precondition failed with this
7375
+ # operation.
7376
+ # @return [String]
7377
+ #
7378
+ # @!attribute [rw] resource_arn
7379
+ # The ARN of the resource on which precondition failed with this
7380
+ # operation.
7381
+ # @return [String]
7382
+ #
7383
+ class PreconditionFailedException < Struct.new(
7384
+ :message,
7385
+ :resource_id,
7386
+ :resource_arn)
7387
+ SENSITIVE = []
7388
+ include Aws::Structure
7389
+ end
7390
+
7199
7391
  # Identifies a specific IoT SiteWise Monitor project.
7200
7392
  #
7201
7393
  # @!attribute [rw] id
@@ -8181,6 +8373,30 @@ module Aws::IoTSiteWise
8181
8373
  # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html
8182
8374
  # @return [Array<Types::AssetModelProperty>]
8183
8375
  #
8376
+ # @!attribute [rw] if_match
8377
+ # The expected current entity tag (ETag) for the asset model’s latest
8378
+ # or active version (specified using `matchForVersionType`). The
8379
+ # update request is rejected if the tag does not match the latest or
8380
+ # active version's current entity tag. See [Optimistic locking for
8381
+ # asset model writes][1] in the *IoT SiteWise User Guide*.
8382
+ #
8383
+ #
8384
+ #
8385
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/opt-locking-for-model.html
8386
+ # @return [String]
8387
+ #
8388
+ # @!attribute [rw] if_none_match
8389
+ # Accepts ***** to reject the update request if an active version
8390
+ # (specified using `matchForVersionType` as `ACTIVE`) already exists
8391
+ # for the asset model.
8392
+ # @return [String]
8393
+ #
8394
+ # @!attribute [rw] match_for_version_type
8395
+ # Specifies the asset model version type (`LATEST` or `ACTIVE`) used
8396
+ # in conjunction with `If-Match` or `If-None-Match` headers to
8397
+ # determine the target ETag for the update operation.
8398
+ # @return [String]
8399
+ #
8184
8400
  class UpdateAssetModelCompositeModelRequest < Struct.new(
8185
8401
  :asset_model_id,
8186
8402
  :asset_model_composite_model_id,
@@ -8188,7 +8404,10 @@ module Aws::IoTSiteWise
8188
8404
  :asset_model_composite_model_description,
8189
8405
  :asset_model_composite_model_name,
8190
8406
  :client_token,
8191
- :asset_model_composite_model_properties)
8407
+ :asset_model_composite_model_properties,
8408
+ :if_match,
8409
+ :if_none_match,
8410
+ :match_for_version_type)
8192
8411
  SENSITIVE = []
8193
8412
  include Aws::Structure
8194
8413
  end
@@ -8225,6 +8444,17 @@ module Aws::IoTSiteWise
8225
8444
  # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
8226
8445
  # @return [String]
8227
8446
  #
8447
+ # @!attribute [rw] asset_model_external_id
8448
+ # An external ID to assign to the asset model. The asset model must
8449
+ # not already have an external ID. The external ID must be unique
8450
+ # within your Amazon Web Services account. For more information, see
8451
+ # [Using external IDs][1] in the *IoT SiteWise User Guide*.
8452
+ #
8453
+ #
8454
+ #
8455
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
8456
+ # @return [String]
8457
+ #
8228
8458
  # @!attribute [rw] asset_model_name
8229
8459
  # A unique name for the asset model.
8230
8460
  # @return [String]
@@ -8292,26 +8522,42 @@ module Aws::IoTSiteWise
8292
8522
  # not need to pass this option.
8293
8523
  # @return [String]
8294
8524
  #
8295
- # @!attribute [rw] asset_model_external_id
8296
- # An external ID to assign to the asset model. The asset model must
8297
- # not already have an external ID. The external ID must be unique
8298
- # within your Amazon Web Services account. For more information, see
8299
- # [Using external IDs][1] in the *IoT SiteWise User Guide*.
8525
+ # @!attribute [rw] if_match
8526
+ # The expected current entity tag (ETag) for the asset model’s latest
8527
+ # or active version (specified using `matchForVersionType`). The
8528
+ # update request is rejected if the tag does not match the latest or
8529
+ # active version's current entity tag. See [Optimistic locking for
8530
+ # asset model writes][1] in the *IoT SiteWise User Guide*.
8300
8531
  #
8301
8532
  #
8302
8533
  #
8303
- # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
8534
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/opt-locking-for-model.html
8535
+ # @return [String]
8536
+ #
8537
+ # @!attribute [rw] if_none_match
8538
+ # Accepts ***** to reject the update request if an active version
8539
+ # (specified using `matchForVersionType` as `ACTIVE`) already exists
8540
+ # for the asset model.
8541
+ # @return [String]
8542
+ #
8543
+ # @!attribute [rw] match_for_version_type
8544
+ # Specifies the asset model version type (`LATEST` or `ACTIVE`) used
8545
+ # in conjunction with `If-Match` or `If-None-Match` headers to
8546
+ # determine the target ETag for the update operation.
8304
8547
  # @return [String]
8305
8548
  #
8306
8549
  class UpdateAssetModelRequest < Struct.new(
8307
8550
  :asset_model_id,
8551
+ :asset_model_external_id,
8308
8552
  :asset_model_name,
8309
8553
  :asset_model_description,
8310
8554
  :asset_model_properties,
8311
8555
  :asset_model_hierarchies,
8312
8556
  :asset_model_composite_models,
8313
8557
  :client_token,
8314
- :asset_model_external_id)
8558
+ :if_match,
8559
+ :if_none_match,
8560
+ :match_for_version_type)
8315
8561
  SENSITIVE = []
8316
8562
  include Aws::Structure
8317
8563
  end