aws-sdk-datazone 1.27.0 → 1.28.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.
@@ -539,7 +539,9 @@ module Aws::DataZone
539
539
  # * {Types::AcceptSubscriptionRequestOutput#created_by #created_by} => String
540
540
  # * {Types::AcceptSubscriptionRequestOutput#decision_comment #decision_comment} => String
541
541
  # * {Types::AcceptSubscriptionRequestOutput#domain_id #domain_id} => String
542
+ # * {Types::AcceptSubscriptionRequestOutput#existing_subscription_id #existing_subscription_id} => String
542
543
  # * {Types::AcceptSubscriptionRequestOutput#id #id} => String
544
+ # * {Types::AcceptSubscriptionRequestOutput#metadata_forms #metadata_forms} => Array<Types::FormOutput>
543
545
  # * {Types::AcceptSubscriptionRequestOutput#request_reason #request_reason} => String
544
546
  # * {Types::AcceptSubscriptionRequestOutput#reviewer_id #reviewer_id} => String
545
547
  # * {Types::AcceptSubscriptionRequestOutput#status #status} => String
@@ -568,7 +570,13 @@ module Aws::DataZone
568
570
  # resp.created_by #=> String
569
571
  # resp.decision_comment #=> String
570
572
  # resp.domain_id #=> String
573
+ # resp.existing_subscription_id #=> String
571
574
  # resp.id #=> String
575
+ # resp.metadata_forms #=> Array
576
+ # resp.metadata_forms[0].content #=> String
577
+ # resp.metadata_forms[0].form_name #=> String
578
+ # resp.metadata_forms[0].type_name #=> String
579
+ # resp.metadata_forms[0].type_revision #=> String
572
580
  # resp.request_reason #=> String
573
581
  # resp.reviewer_id #=> String
574
582
  # resp.status #=> String, one of "PENDING", "ACCEPTED", "REJECTED"
@@ -992,7 +1000,7 @@ module Aws::DataZone
992
1000
  # content: "FormInputContentString",
993
1001
  # form_name: "FormName", # required
994
1002
  # type_identifier: "FormTypeIdentifier",
995
- # type_revision: "Revision",
1003
+ # type_revision: "RevisionInput",
996
1004
  # },
997
1005
  # ],
998
1006
  # glossary_terms: ["GlossaryTermId"],
@@ -1293,7 +1301,7 @@ module Aws::DataZone
1293
1301
  # content: "FormInputContentString",
1294
1302
  # form_name: "FormName", # required
1295
1303
  # type_identifier: "FormTypeIdentifier",
1296
- # type_revision: "Revision",
1304
+ # type_revision: "RevisionInput",
1297
1305
  # },
1298
1306
  # ],
1299
1307
  # glossary_terms: ["GlossaryTermId"],
@@ -1489,7 +1497,7 @@ module Aws::DataZone
1489
1497
  # content: "FormInputContentString",
1490
1498
  # form_name: "FormName", # required
1491
1499
  # type_identifier: "FormTypeIdentifier",
1492
- # type_revision: "Revision",
1500
+ # type_revision: "RevisionInput",
1493
1501
  # },
1494
1502
  # ],
1495
1503
  # glossary_terms: ["GlossaryTermId"],
@@ -1599,7 +1607,7 @@ module Aws::DataZone
1599
1607
  # content: "FormInputContentString",
1600
1608
  # form_name: "FormName", # required
1601
1609
  # type_identifier: "FormTypeIdentifier",
1602
- # type_revision: "Revision",
1610
+ # type_revision: "RevisionInput",
1603
1611
  # },
1604
1612
  # ],
1605
1613
  # glossary_terms: ["GlossaryTermId"],
@@ -1733,7 +1741,7 @@ module Aws::DataZone
1733
1741
  # content: "FormInputContentString",
1734
1742
  # form_name: "FormName", # required
1735
1743
  # type_identifier: "FormTypeIdentifier",
1736
- # type_revision: "Revision",
1744
+ # type_revision: "RevisionInput",
1737
1745
  # },
1738
1746
  # ],
1739
1747
  # client_token: "String",
@@ -2723,6 +2731,127 @@ module Aws::DataZone
2723
2731
  req.send_request(options)
2724
2732
  end
2725
2733
 
2734
+ # Creates a rule in Amazon DataZone. A rule is a formal agreement that
2735
+ # enforces specific requirements across user workflows (e.g., publishing
2736
+ # assets to the catalog, requesting subscriptions, creating projects)
2737
+ # within the Amazon DataZone data portal. These rules help maintain
2738
+ # consistency, ensure compliance, and uphold governance standards in
2739
+ # data management processes. For instance, a metadata enforcement rule
2740
+ # can specify the required information for creating a subscription
2741
+ # request or publishing a data asset to the catalog, ensuring alignment
2742
+ # with organizational standards.
2743
+ #
2744
+ # @option params [required, String] :action
2745
+ # The action of the rule.
2746
+ #
2747
+ # @option params [String] :client_token
2748
+ # A unique, case-sensitive identifier that is provided to ensure the
2749
+ # idempotency of the request.
2750
+ #
2751
+ # **A suitable default value is auto-generated.** You should normally
2752
+ # not need to pass this option.**
2753
+ #
2754
+ # @option params [String] :description
2755
+ # The description of the rule.
2756
+ #
2757
+ # @option params [required, Types::RuleDetail] :detail
2758
+ # The detail of the rule.
2759
+ #
2760
+ # @option params [required, String] :domain_identifier
2761
+ # The ID of the domain where the rule is created.
2762
+ #
2763
+ # @option params [required, String] :name
2764
+ # The name of the rule.
2765
+ #
2766
+ # @option params [required, Types::RuleScope] :scope
2767
+ # The scope of the rule.
2768
+ #
2769
+ # @option params [required, Types::RuleTarget] :target
2770
+ # The target of the rule.
2771
+ #
2772
+ # @return [Types::CreateRuleOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2773
+ #
2774
+ # * {Types::CreateRuleOutput#action #action} => String
2775
+ # * {Types::CreateRuleOutput#created_at #created_at} => Time
2776
+ # * {Types::CreateRuleOutput#created_by #created_by} => String
2777
+ # * {Types::CreateRuleOutput#description #description} => String
2778
+ # * {Types::CreateRuleOutput#detail #detail} => Types::RuleDetail
2779
+ # * {Types::CreateRuleOutput#identifier #identifier} => String
2780
+ # * {Types::CreateRuleOutput#name #name} => String
2781
+ # * {Types::CreateRuleOutput#rule_type #rule_type} => String
2782
+ # * {Types::CreateRuleOutput#scope #scope} => Types::RuleScope
2783
+ # * {Types::CreateRuleOutput#target #target} => Types::RuleTarget
2784
+ # * {Types::CreateRuleOutput#target_type #target_type} => String
2785
+ #
2786
+ # @example Request syntax with placeholder values
2787
+ #
2788
+ # resp = client.create_rule({
2789
+ # action: "CREATE_SUBSCRIPTION_REQUEST", # required, accepts CREATE_SUBSCRIPTION_REQUEST
2790
+ # client_token: "ClientToken",
2791
+ # description: "Description",
2792
+ # detail: { # required
2793
+ # metadata_form_enforcement_detail: {
2794
+ # required_metadata_forms: [
2795
+ # {
2796
+ # type_identifier: "FormTypeIdentifier", # required
2797
+ # type_revision: "Revision", # required
2798
+ # },
2799
+ # ],
2800
+ # },
2801
+ # },
2802
+ # domain_identifier: "DomainId", # required
2803
+ # name: "RuleName", # required
2804
+ # scope: { # required
2805
+ # asset_type: {
2806
+ # selection_mode: "ALL", # required, accepts ALL, SPECIFIC
2807
+ # specific_asset_types: ["AssetTypeIdentifier"],
2808
+ # },
2809
+ # data_product: false,
2810
+ # project: {
2811
+ # selection_mode: "ALL", # required, accepts ALL, SPECIFIC
2812
+ # specific_projects: ["ProjectId"],
2813
+ # },
2814
+ # },
2815
+ # target: { # required
2816
+ # domain_unit_target: {
2817
+ # domain_unit_id: "DomainUnitId", # required
2818
+ # include_child_domain_units: false,
2819
+ # },
2820
+ # },
2821
+ # })
2822
+ #
2823
+ # @example Response structure
2824
+ #
2825
+ # resp.action #=> String, one of "CREATE_SUBSCRIPTION_REQUEST"
2826
+ # resp.created_at #=> Time
2827
+ # resp.created_by #=> String
2828
+ # resp.description #=> String
2829
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms #=> Array
2830
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms[0].type_identifier #=> String
2831
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms[0].type_revision #=> String
2832
+ # resp.identifier #=> String
2833
+ # resp.name #=> String
2834
+ # resp.rule_type #=> String, one of "METADATA_FORM_ENFORCEMENT"
2835
+ # resp.scope.asset_type.selection_mode #=> String, one of "ALL", "SPECIFIC"
2836
+ # resp.scope.asset_type.specific_asset_types #=> Array
2837
+ # resp.scope.asset_type.specific_asset_types[0] #=> String
2838
+ # resp.scope.data_product #=> Boolean
2839
+ # resp.scope.project.selection_mode #=> String, one of "ALL", "SPECIFIC"
2840
+ # resp.scope.project.specific_projects #=> Array
2841
+ # resp.scope.project.specific_projects[0] #=> String
2842
+ # resp.target.domain_unit_target.domain_unit_id #=> String
2843
+ # resp.target.domain_unit_target.include_child_domain_units #=> Boolean
2844
+ # resp.target_type #=> String, one of "DOMAIN_UNIT"
2845
+ #
2846
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateRule AWS API Documentation
2847
+ #
2848
+ # @overload create_rule(params = {})
2849
+ # @param [Hash] params ({})
2850
+ def create_rule(params = {}, options = {})
2851
+ req = build_request(:create_rule, params)
2852
+ req.send_request(options)
2853
+ end
2854
+
2726
2855
  # Creates a subsscription grant in Amazon DataZone.
2727
2856
  #
2728
2857
  # @option params [Array<Types::AssetTargetNameMap>] :asset_target_names
@@ -2833,6 +2962,9 @@ module Aws::DataZone
2833
2962
  # The ID of the Amazon DataZone domain in which the subscription request
2834
2963
  # is created.
2835
2964
  #
2965
+ # @option params [Array<Types::FormInput>] :metadata_forms
2966
+ # The metadata form included in the subscription request.
2967
+ #
2836
2968
  # @option params [required, String] :request_reason
2837
2969
  # The reason for the subscription request.
2838
2970
  #
@@ -2849,7 +2981,9 @@ module Aws::DataZone
2849
2981
  # * {Types::CreateSubscriptionRequestOutput#created_by #created_by} => String
2850
2982
  # * {Types::CreateSubscriptionRequestOutput#decision_comment #decision_comment} => String
2851
2983
  # * {Types::CreateSubscriptionRequestOutput#domain_id #domain_id} => String
2984
+ # * {Types::CreateSubscriptionRequestOutput#existing_subscription_id #existing_subscription_id} => String
2852
2985
  # * {Types::CreateSubscriptionRequestOutput#id #id} => String
2986
+ # * {Types::CreateSubscriptionRequestOutput#metadata_forms #metadata_forms} => Array&lt;Types::FormOutput&gt;
2853
2987
  # * {Types::CreateSubscriptionRequestOutput#request_reason #request_reason} => String
2854
2988
  # * {Types::CreateSubscriptionRequestOutput#reviewer_id #reviewer_id} => String
2855
2989
  # * {Types::CreateSubscriptionRequestOutput#status #status} => String
@@ -2863,6 +2997,14 @@ module Aws::DataZone
2863
2997
  # resp = client.create_subscription_request({
2864
2998
  # client_token: "String",
2865
2999
  # domain_identifier: "DomainId", # required
3000
+ # metadata_forms: [
3001
+ # {
3002
+ # content: "FormInputContentString",
3003
+ # form_name: "FormName", # required
3004
+ # type_identifier: "FormTypeIdentifier",
3005
+ # type_revision: "RevisionInput",
3006
+ # },
3007
+ # ],
2866
3008
  # request_reason: "RequestReason", # required
2867
3009
  # subscribed_listings: [ # required
2868
3010
  # {
@@ -2884,7 +3026,13 @@ module Aws::DataZone
2884
3026
  # resp.created_by #=> String
2885
3027
  # resp.decision_comment #=> String
2886
3028
  # resp.domain_id #=> String
3029
+ # resp.existing_subscription_id #=> String
2887
3030
  # resp.id #=> String
3031
+ # resp.metadata_forms #=> Array
3032
+ # resp.metadata_forms[0].content #=> String
3033
+ # resp.metadata_forms[0].form_name #=> String
3034
+ # resp.metadata_forms[0].type_name #=> String
3035
+ # resp.metadata_forms[0].type_revision #=> String
2888
3036
  # resp.request_reason #=> String
2889
3037
  # resp.reviewer_id #=> String
2890
3038
  # resp.status #=> String, one of "PENDING", "ACCEPTED", "REJECTED"
@@ -3682,6 +3830,40 @@ module Aws::DataZone
3682
3830
  req.send_request(options)
3683
3831
  end
3684
3832
 
3833
+ # Deletes a rule in Amazon DataZone. A rule is a formal agreement that
3834
+ # enforces specific requirements across user workflows (e.g., publishing
3835
+ # assets to the catalog, requesting subscriptions, creating projects)
3836
+ # within the Amazon DataZone data portal. These rules help maintain
3837
+ # consistency, ensure compliance, and uphold governance standards in
3838
+ # data management processes. For instance, a metadata enforcement rule
3839
+ # can specify the required information for creating a subscription
3840
+ # request or publishing a data asset to the catalog, ensuring alignment
3841
+ # with organizational standards.
3842
+ #
3843
+ # @option params [required, String] :domain_identifier
3844
+ # The ID of the domain that where the rule is to be deleted.
3845
+ #
3846
+ # @option params [required, String] :identifier
3847
+ # The ID of the rule that is to be deleted.
3848
+ #
3849
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3850
+ #
3851
+ # @example Request syntax with placeholder values
3852
+ #
3853
+ # resp = client.delete_rule({
3854
+ # domain_identifier: "DomainId", # required
3855
+ # identifier: "RuleId", # required
3856
+ # })
3857
+ #
3858
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteRule AWS API Documentation
3859
+ #
3860
+ # @overload delete_rule(params = {})
3861
+ # @param [Hash] params ({})
3862
+ def delete_rule(params = {}, options = {})
3863
+ req = build_request(:delete_rule, params)
3864
+ req.send_request(options)
3865
+ end
3866
+
3685
3867
  # Deletes and subscription grant in Amazon DataZone.
3686
3868
  #
3687
3869
  # @option params [required, String] :domain_identifier
@@ -5329,6 +5511,85 @@ module Aws::DataZone
5329
5511
  req.send_request(options)
5330
5512
  end
5331
5513
 
5514
+ # Gets the details of a rule in Amazon DataZone. A rule is a formal
5515
+ # agreement that enforces specific requirements across user workflows
5516
+ # (e.g., publishing assets to the catalog, requesting subscriptions,
5517
+ # creating projects) within the Amazon DataZone data portal. These rules
5518
+ # help maintain consistency, ensure compliance, and uphold governance
5519
+ # standards in data management processes. For instance, a metadata
5520
+ # enforcement rule can specify the required information for creating a
5521
+ # subscription request or publishing a data asset to the catalog,
5522
+ # ensuring alignment with organizational standards.
5523
+ #
5524
+ # @option params [required, String] :domain_identifier
5525
+ # The ID of the domain where the `GetRule` action is to be invoked.
5526
+ #
5527
+ # @option params [required, String] :identifier
5528
+ # The ID of the rule.
5529
+ #
5530
+ # @option params [String] :revision
5531
+ # The revision of the rule.
5532
+ #
5533
+ # @return [Types::GetRuleOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5534
+ #
5535
+ # * {Types::GetRuleOutput#action #action} => String
5536
+ # * {Types::GetRuleOutput#created_at #created_at} => Time
5537
+ # * {Types::GetRuleOutput#created_by #created_by} => String
5538
+ # * {Types::GetRuleOutput#description #description} => String
5539
+ # * {Types::GetRuleOutput#detail #detail} => Types::RuleDetail
5540
+ # * {Types::GetRuleOutput#identifier #identifier} => String
5541
+ # * {Types::GetRuleOutput#last_updated_by #last_updated_by} => String
5542
+ # * {Types::GetRuleOutput#name #name} => String
5543
+ # * {Types::GetRuleOutput#revision #revision} => String
5544
+ # * {Types::GetRuleOutput#rule_type #rule_type} => String
5545
+ # * {Types::GetRuleOutput#scope #scope} => Types::RuleScope
5546
+ # * {Types::GetRuleOutput#target #target} => Types::RuleTarget
5547
+ # * {Types::GetRuleOutput#target_type #target_type} => String
5548
+ # * {Types::GetRuleOutput#updated_at #updated_at} => Time
5549
+ #
5550
+ # @example Request syntax with placeholder values
5551
+ #
5552
+ # resp = client.get_rule({
5553
+ # domain_identifier: "DomainId", # required
5554
+ # identifier: "RuleId", # required
5555
+ # revision: "Revision",
5556
+ # })
5557
+ #
5558
+ # @example Response structure
5559
+ #
5560
+ # resp.action #=> String, one of "CREATE_SUBSCRIPTION_REQUEST"
5561
+ # resp.created_at #=> Time
5562
+ # resp.created_by #=> String
5563
+ # resp.description #=> String
5564
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms #=> Array
5565
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms[0].type_identifier #=> String
5566
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms[0].type_revision #=> String
5567
+ # resp.identifier #=> String
5568
+ # resp.last_updated_by #=> String
5569
+ # resp.name #=> String
5570
+ # resp.revision #=> String
5571
+ # resp.rule_type #=> String, one of "METADATA_FORM_ENFORCEMENT"
5572
+ # resp.scope.asset_type.selection_mode #=> String, one of "ALL", "SPECIFIC"
5573
+ # resp.scope.asset_type.specific_asset_types #=> Array
5574
+ # resp.scope.asset_type.specific_asset_types[0] #=> String
5575
+ # resp.scope.data_product #=> Boolean
5576
+ # resp.scope.project.selection_mode #=> String, one of "ALL", "SPECIFIC"
5577
+ # resp.scope.project.specific_projects #=> Array
5578
+ # resp.scope.project.specific_projects[0] #=> String
5579
+ # resp.target.domain_unit_target.domain_unit_id #=> String
5580
+ # resp.target.domain_unit_target.include_child_domain_units #=> Boolean
5581
+ # resp.target_type #=> String, one of "DOMAIN_UNIT"
5582
+ # resp.updated_at #=> Time
5583
+ #
5584
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetRule AWS API Documentation
5585
+ #
5586
+ # @overload get_rule(params = {})
5587
+ # @param [Hash] params ({})
5588
+ def get_rule(params = {}, options = {})
5589
+ req = build_request(:get_rule, params)
5590
+ req.send_request(options)
5591
+ end
5592
+
5332
5593
  # Gets a subscription in Amazon DataZone.
5333
5594
  #
5334
5595
  # @option params [required, String] :domain_identifier
@@ -5492,7 +5753,9 @@ module Aws::DataZone
5492
5753
  # * {Types::GetSubscriptionRequestDetailsOutput#created_by #created_by} => String
5493
5754
  # * {Types::GetSubscriptionRequestDetailsOutput#decision_comment #decision_comment} => String
5494
5755
  # * {Types::GetSubscriptionRequestDetailsOutput#domain_id #domain_id} => String
5756
+ # * {Types::GetSubscriptionRequestDetailsOutput#existing_subscription_id #existing_subscription_id} => String
5495
5757
  # * {Types::GetSubscriptionRequestDetailsOutput#id #id} => String
5758
+ # * {Types::GetSubscriptionRequestDetailsOutput#metadata_forms #metadata_forms} => Array&lt;Types::FormOutput&gt;
5496
5759
  # * {Types::GetSubscriptionRequestDetailsOutput#request_reason #request_reason} => String
5497
5760
  # * {Types::GetSubscriptionRequestDetailsOutput#reviewer_id #reviewer_id} => String
5498
5761
  # * {Types::GetSubscriptionRequestDetailsOutput#status #status} => String
@@ -5514,7 +5777,13 @@ module Aws::DataZone
5514
5777
  # resp.created_by #=> String
5515
5778
  # resp.decision_comment #=> String
5516
5779
  # resp.domain_id #=> String
5780
+ # resp.existing_subscription_id #=> String
5517
5781
  # resp.id #=> String
5782
+ # resp.metadata_forms #=> Array
5783
+ # resp.metadata_forms[0].content #=> String
5784
+ # resp.metadata_forms[0].form_name #=> String
5785
+ # resp.metadata_forms[0].type_name #=> String
5786
+ # resp.metadata_forms[0].type_revision #=> String
5518
5787
  # resp.request_reason #=> String
5519
5788
  # resp.reviewer_id #=> String
5520
5789
  # resp.status #=> String, one of "PENDING", "ACCEPTED", "REJECTED"
@@ -7158,6 +7427,111 @@ module Aws::DataZone
7158
7427
  req.send_request(options)
7159
7428
  end
7160
7429
 
7430
+ # Lists existing rules. In Amazon DataZone, a rule is a formal agreement
7431
+ # that enforces specific requirements across user workflows (e.g.,
7432
+ # publishing assets to the catalog, requesting subscriptions, creating
7433
+ # projects) within the Amazon DataZone data portal. These rules help
7434
+ # maintain consistency, ensure compliance, and uphold governance
7435
+ # standards in data management processes. For instance, a metadata
7436
+ # enforcement rule can specify the required information for creating a
7437
+ # subscription request or publishing a data asset to the catalog,
7438
+ # ensuring alignment with organizational standards.
7439
+ #
7440
+ # @option params [String] :action
7441
+ # The action of the rule.
7442
+ #
7443
+ # @option params [Array<String>] :asset_types
7444
+ # The asset types of the rule.
7445
+ #
7446
+ # @option params [Boolean] :data_product
7447
+ # The data product of the rule.
7448
+ #
7449
+ # @option params [required, String] :domain_identifier
7450
+ # The ID of the domain in which the rules are to be listed.
7451
+ #
7452
+ # @option params [Boolean] :include_cascaded
7453
+ # Specifies whether to include cascading rules in the results.
7454
+ #
7455
+ # @option params [Integer] :max_results
7456
+ # The maximum number of rules to return in a single call to `ListRules`.
7457
+ # When the number of rules to be listed is greater than the value of
7458
+ # `MaxResults`, the response contains a `NextToken` value that you can
7459
+ # use in a subsequent call to `ListRules` to list the next set of rules.
7460
+ #
7461
+ # @option params [String] :next_token
7462
+ # When the number of rules is greater than the default value for the
7463
+ # `MaxResults` parameter, or if you explicitly specify a value for
7464
+ # `MaxResults` that is less than the number of rules, the response
7465
+ # includes a pagination token named `NextToken`. You can specify this
7466
+ # `NextToken` value in a subsequent call to `ListRules` to list the next
7467
+ # set of rules.
7468
+ #
7469
+ # @option params [Array<String>] :project_ids
7470
+ # The IDs of projects in which rules are to be listed.
7471
+ #
7472
+ # @option params [String] :rule_type
7473
+ # The type of the rule.
7474
+ #
7475
+ # @option params [required, String] :target_identifier
7476
+ # The target ID of the rule.
7477
+ #
7478
+ # @option params [required, String] :target_type
7479
+ # The target type of the rule.
7480
+ #
7481
+ # @return [Types::ListRulesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7482
+ #
7483
+ # * {Types::ListRulesOutput#items #items} => Array&lt;Types::RuleSummary&gt;
7484
+ # * {Types::ListRulesOutput#next_token #next_token} => String
7485
+ #
7486
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
7487
+ #
7488
+ # @example Request syntax with placeholder values
7489
+ #
7490
+ # resp = client.list_rules({
7491
+ # action: "CREATE_SUBSCRIPTION_REQUEST", # accepts CREATE_SUBSCRIPTION_REQUEST
7492
+ # asset_types: ["AssetTypeIdentifier"],
7493
+ # data_product: false,
7494
+ # domain_identifier: "DomainId", # required
7495
+ # include_cascaded: false,
7496
+ # max_results: 1,
7497
+ # next_token: "PaginationToken",
7498
+ # project_ids: ["ProjectId"],
7499
+ # rule_type: "METADATA_FORM_ENFORCEMENT", # accepts METADATA_FORM_ENFORCEMENT
7500
+ # target_identifier: "String", # required
7501
+ # target_type: "DOMAIN_UNIT", # required, accepts DOMAIN_UNIT
7502
+ # })
7503
+ #
7504
+ # @example Response structure
7505
+ #
7506
+ # resp.items #=> Array
7507
+ # resp.items[0].action #=> String, one of "CREATE_SUBSCRIPTION_REQUEST"
7508
+ # resp.items[0].identifier #=> String
7509
+ # resp.items[0].last_updated_by #=> String
7510
+ # resp.items[0].name #=> String
7511
+ # resp.items[0].revision #=> String
7512
+ # resp.items[0].rule_type #=> String, one of "METADATA_FORM_ENFORCEMENT"
7513
+ # resp.items[0].scope.asset_type.selection_mode #=> String, one of "ALL", "SPECIFIC"
7514
+ # resp.items[0].scope.asset_type.specific_asset_types #=> Array
7515
+ # resp.items[0].scope.asset_type.specific_asset_types[0] #=> String
7516
+ # resp.items[0].scope.data_product #=> Boolean
7517
+ # resp.items[0].scope.project.selection_mode #=> String, one of "ALL", "SPECIFIC"
7518
+ # resp.items[0].scope.project.specific_projects #=> Array
7519
+ # resp.items[0].scope.project.specific_projects[0] #=> String
7520
+ # resp.items[0].target.domain_unit_target.domain_unit_id #=> String
7521
+ # resp.items[0].target.domain_unit_target.include_child_domain_units #=> Boolean
7522
+ # resp.items[0].target_type #=> String, one of "DOMAIN_UNIT"
7523
+ # resp.items[0].updated_at #=> Time
7524
+ # resp.next_token #=> String
7525
+ #
7526
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListRules AWS API Documentation
7527
+ #
7528
+ # @overload list_rules(params = {})
7529
+ # @param [Hash] params ({})
7530
+ def list_rules(params = {}, options = {})
7531
+ req = build_request(:list_rules, params)
7532
+ req.send_request(options)
7533
+ end
7534
+
7161
7535
  # Lists subscription grants.
7162
7536
  #
7163
7537
  # @option params [required, String] :domain_identifier
@@ -7332,7 +7706,12 @@ module Aws::DataZone
7332
7706
  # resp.items[0].created_by #=> String
7333
7707
  # resp.items[0].decision_comment #=> String
7334
7708
  # resp.items[0].domain_id #=> String
7709
+ # resp.items[0].existing_subscription_id #=> String
7335
7710
  # resp.items[0].id #=> String
7711
+ # resp.items[0].metadata_forms_summary #=> Array
7712
+ # resp.items[0].metadata_forms_summary[0].form_name #=> String
7713
+ # resp.items[0].metadata_forms_summary[0].type_name #=> String
7714
+ # resp.items[0].metadata_forms_summary[0].type_revision #=> String
7336
7715
  # resp.items[0].request_reason #=> String
7337
7716
  # resp.items[0].reviewer_id #=> String
7338
7717
  # resp.items[0].status #=> String, one of "PENDING", "ACCEPTED", "REJECTED"
@@ -7975,7 +8354,9 @@ module Aws::DataZone
7975
8354
  # * {Types::RejectSubscriptionRequestOutput#created_by #created_by} => String
7976
8355
  # * {Types::RejectSubscriptionRequestOutput#decision_comment #decision_comment} => String
7977
8356
  # * {Types::RejectSubscriptionRequestOutput#domain_id #domain_id} => String
8357
+ # * {Types::RejectSubscriptionRequestOutput#existing_subscription_id #existing_subscription_id} => String
7978
8358
  # * {Types::RejectSubscriptionRequestOutput#id #id} => String
8359
+ # * {Types::RejectSubscriptionRequestOutput#metadata_forms #metadata_forms} => Array&lt;Types::FormOutput&gt;
7979
8360
  # * {Types::RejectSubscriptionRequestOutput#request_reason #request_reason} => String
7980
8361
  # * {Types::RejectSubscriptionRequestOutput#reviewer_id #reviewer_id} => String
7981
8362
  # * {Types::RejectSubscriptionRequestOutput#status #status} => String
@@ -7998,7 +8379,13 @@ module Aws::DataZone
7998
8379
  # resp.created_by #=> String
7999
8380
  # resp.decision_comment #=> String
8000
8381
  # resp.domain_id #=> String
8382
+ # resp.existing_subscription_id #=> String
8001
8383
  # resp.id #=> String
8384
+ # resp.metadata_forms #=> Array
8385
+ # resp.metadata_forms[0].content #=> String
8386
+ # resp.metadata_forms[0].form_name #=> String
8387
+ # resp.metadata_forms[0].type_name #=> String
8388
+ # resp.metadata_forms[0].type_revision #=> String
8002
8389
  # resp.request_reason #=> String
8003
8390
  # resp.reviewer_id #=> String
8004
8391
  # resp.status #=> String, one of "PENDING", "ACCEPTED", "REJECTED"
@@ -9257,7 +9644,7 @@ module Aws::DataZone
9257
9644
  # content: "FormInputContentString",
9258
9645
  # form_name: "FormName", # required
9259
9646
  # type_identifier: "FormTypeIdentifier",
9260
- # type_revision: "Revision",
9647
+ # type_revision: "RevisionInput",
9261
9648
  # },
9262
9649
  # ],
9263
9650
  # configuration: {
@@ -10040,6 +10427,118 @@ module Aws::DataZone
10040
10427
  req.send_request(options)
10041
10428
  end
10042
10429
 
10430
+ # Updates a rule. In Amazon DataZone, a rule is a formal agreement that
10431
+ # enforces specific requirements across user workflows (e.g., publishing
10432
+ # assets to the catalog, requesting subscriptions, creating projects)
10433
+ # within the Amazon DataZone data portal. These rules help maintain
10434
+ # consistency, ensure compliance, and uphold governance standards in
10435
+ # data management processes. For instance, a metadata enforcement rule
10436
+ # can specify the required information for creating a subscription
10437
+ # request or publishing a data asset to the catalog, ensuring alignment
10438
+ # with organizational standards.
10439
+ #
10440
+ # @option params [String] :description
10441
+ # The description of the rule.
10442
+ #
10443
+ # @option params [Types::RuleDetail] :detail
10444
+ # The detail of the rule.
10445
+ #
10446
+ # @option params [required, String] :domain_identifier
10447
+ # The ID of the domain in which a rule is to be updated.
10448
+ #
10449
+ # @option params [required, String] :identifier
10450
+ # The ID of the rule that is to be updated
10451
+ #
10452
+ # @option params [Boolean] :include_child_domain_units
10453
+ # Specifies whether to update this rule in the child domain units.
10454
+ #
10455
+ # @option params [String] :name
10456
+ # The name of the rule.
10457
+ #
10458
+ # @option params [Types::RuleScope] :scope
10459
+ # The scrope of the rule.
10460
+ #
10461
+ # @return [Types::UpdateRuleOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10462
+ #
10463
+ # * {Types::UpdateRuleOutput#action #action} => String
10464
+ # * {Types::UpdateRuleOutput#created_at #created_at} => Time
10465
+ # * {Types::UpdateRuleOutput#created_by #created_by} => String
10466
+ # * {Types::UpdateRuleOutput#description #description} => String
10467
+ # * {Types::UpdateRuleOutput#detail #detail} => Types::RuleDetail
10468
+ # * {Types::UpdateRuleOutput#identifier #identifier} => String
10469
+ # * {Types::UpdateRuleOutput#last_updated_by #last_updated_by} => String
10470
+ # * {Types::UpdateRuleOutput#name #name} => String
10471
+ # * {Types::UpdateRuleOutput#revision #revision} => String
10472
+ # * {Types::UpdateRuleOutput#rule_type #rule_type} => String
10473
+ # * {Types::UpdateRuleOutput#scope #scope} => Types::RuleScope
10474
+ # * {Types::UpdateRuleOutput#target #target} => Types::RuleTarget
10475
+ # * {Types::UpdateRuleOutput#updated_at #updated_at} => Time
10476
+ #
10477
+ # @example Request syntax with placeholder values
10478
+ #
10479
+ # resp = client.update_rule({
10480
+ # description: "Description",
10481
+ # detail: {
10482
+ # metadata_form_enforcement_detail: {
10483
+ # required_metadata_forms: [
10484
+ # {
10485
+ # type_identifier: "FormTypeIdentifier", # required
10486
+ # type_revision: "Revision", # required
10487
+ # },
10488
+ # ],
10489
+ # },
10490
+ # },
10491
+ # domain_identifier: "DomainId", # required
10492
+ # identifier: "RuleId", # required
10493
+ # include_child_domain_units: false,
10494
+ # name: "RuleName",
10495
+ # scope: {
10496
+ # asset_type: {
10497
+ # selection_mode: "ALL", # required, accepts ALL, SPECIFIC
10498
+ # specific_asset_types: ["AssetTypeIdentifier"],
10499
+ # },
10500
+ # data_product: false,
10501
+ # project: {
10502
+ # selection_mode: "ALL", # required, accepts ALL, SPECIFIC
10503
+ # specific_projects: ["ProjectId"],
10504
+ # },
10505
+ # },
10506
+ # })
10507
+ #
10508
+ # @example Response structure
10509
+ #
10510
+ # resp.action #=> String, one of "CREATE_SUBSCRIPTION_REQUEST"
10511
+ # resp.created_at #=> Time
10512
+ # resp.created_by #=> String
10513
+ # resp.description #=> String
10514
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms #=> Array
10515
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms[0].type_identifier #=> String
10516
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms[0].type_revision #=> String
10517
+ # resp.identifier #=> String
10518
+ # resp.last_updated_by #=> String
10519
+ # resp.name #=> String
10520
+ # resp.revision #=> String
10521
+ # resp.rule_type #=> String, one of "METADATA_FORM_ENFORCEMENT"
10522
+ # resp.scope.asset_type.selection_mode #=> String, one of "ALL", "SPECIFIC"
10523
+ # resp.scope.asset_type.specific_asset_types #=> Array
10524
+ # resp.scope.asset_type.specific_asset_types[0] #=> String
10525
+ # resp.scope.data_product #=> Boolean
10526
+ # resp.scope.project.selection_mode #=> String, one of "ALL", "SPECIFIC"
10527
+ # resp.scope.project.specific_projects #=> Array
10528
+ # resp.scope.project.specific_projects[0] #=> String
10529
+ # resp.target.domain_unit_target.domain_unit_id #=> String
10530
+ # resp.target.domain_unit_target.include_child_domain_units #=> Boolean
10531
+ # resp.updated_at #=> Time
10532
+ #
10533
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateRule AWS API Documentation
10534
+ #
10535
+ # @overload update_rule(params = {})
10536
+ # @param [Hash] params ({})
10537
+ def update_rule(params = {}, options = {})
10538
+ req = build_request(:update_rule, params)
10539
+ req.send_request(options)
10540
+ end
10541
+
10043
10542
  # Updates the status of the specified subscription grant status in
10044
10543
  # Amazon DataZone.
10045
10544
  #
@@ -10148,7 +10647,9 @@ module Aws::DataZone
10148
10647
  # * {Types::UpdateSubscriptionRequestOutput#created_by #created_by} => String
10149
10648
  # * {Types::UpdateSubscriptionRequestOutput#decision_comment #decision_comment} => String
10150
10649
  # * {Types::UpdateSubscriptionRequestOutput#domain_id #domain_id} => String
10650
+ # * {Types::UpdateSubscriptionRequestOutput#existing_subscription_id #existing_subscription_id} => String
10151
10651
  # * {Types::UpdateSubscriptionRequestOutput#id #id} => String
10652
+ # * {Types::UpdateSubscriptionRequestOutput#metadata_forms #metadata_forms} => Array&lt;Types::FormOutput&gt;
10152
10653
  # * {Types::UpdateSubscriptionRequestOutput#request_reason #request_reason} => String
10153
10654
  # * {Types::UpdateSubscriptionRequestOutput#reviewer_id #reviewer_id} => String
10154
10655
  # * {Types::UpdateSubscriptionRequestOutput#status #status} => String
@@ -10171,7 +10672,13 @@ module Aws::DataZone
10171
10672
  # resp.created_by #=> String
10172
10673
  # resp.decision_comment #=> String
10173
10674
  # resp.domain_id #=> String
10675
+ # resp.existing_subscription_id #=> String
10174
10676
  # resp.id #=> String
10677
+ # resp.metadata_forms #=> Array
10678
+ # resp.metadata_forms[0].content #=> String
10679
+ # resp.metadata_forms[0].form_name #=> String
10680
+ # resp.metadata_forms[0].type_name #=> String
10681
+ # resp.metadata_forms[0].type_revision #=> String
10175
10682
  # resp.request_reason #=> String
10176
10683
  # resp.reviewer_id #=> String
10177
10684
  # resp.status #=> String, one of "PENDING", "ACCEPTED", "REJECTED"
@@ -10395,7 +10902,7 @@ module Aws::DataZone
10395
10902
  tracer: tracer
10396
10903
  )
10397
10904
  context[:gem_name] = 'aws-sdk-datazone'
10398
- context[:gem_version] = '1.27.0'
10905
+ context[:gem_version] = '1.28.0'
10399
10906
  Seahorse::Client::Request.new(handlers, context)
10400
10907
  end
10401
10908