aws-sdk-iotsitewise 1.68.0 → 1.69.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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