lib/aws-sdk-datazone/client.rb in aws-sdk-datazone-1.27.0 vs lib/aws-sdk-datazone/client.rb in aws-sdk-datazone-1.28.0
- old
+ new
@@ -537,11 +537,13 @@
#
# * {Types::AcceptSubscriptionRequestOutput#created_at #created_at} => Time
# * {Types::AcceptSubscriptionRequestOutput#created_by #created_by} => String
# * {Types::AcceptSubscriptionRequestOutput#decision_comment #decision_comment} => String
# * {Types::AcceptSubscriptionRequestOutput#domain_id #domain_id} => String
+ # * {Types::AcceptSubscriptionRequestOutput#existing_subscription_id #existing_subscription_id} => String
# * {Types::AcceptSubscriptionRequestOutput#id #id} => String
+ # * {Types::AcceptSubscriptionRequestOutput#metadata_forms #metadata_forms} => Array<Types::FormOutput>
# * {Types::AcceptSubscriptionRequestOutput#request_reason #request_reason} => String
# * {Types::AcceptSubscriptionRequestOutput#reviewer_id #reviewer_id} => String
# * {Types::AcceptSubscriptionRequestOutput#status #status} => String
# * {Types::AcceptSubscriptionRequestOutput#subscribed_listings #subscribed_listings} => Array<Types::SubscribedListing>
# * {Types::AcceptSubscriptionRequestOutput#subscribed_principals #subscribed_principals} => Array<Types::SubscribedPrincipal>
@@ -566,11 +568,17 @@
#
# resp.created_at #=> Time
# resp.created_by #=> String
# resp.decision_comment #=> String
# resp.domain_id #=> String
+ # resp.existing_subscription_id #=> String
# resp.id #=> String
+ # resp.metadata_forms #=> Array
+ # resp.metadata_forms[0].content #=> String
+ # resp.metadata_forms[0].form_name #=> String
+ # resp.metadata_forms[0].type_name #=> String
+ # resp.metadata_forms[0].type_revision #=> String
# resp.request_reason #=> String
# resp.reviewer_id #=> String
# resp.status #=> String, one of "PENDING", "ACCEPTED", "REJECTED"
# resp.subscribed_listings #=> Array
# resp.subscribed_listings[0].description #=> String
@@ -990,11 +998,11 @@
# forms_input: [
# {
# content: "FormInputContentString",
# form_name: "FormName", # required
# type_identifier: "FormTypeIdentifier",
- # type_revision: "Revision",
+ # type_revision: "RevisionInput",
# },
# ],
# glossary_terms: ["GlossaryTermId"],
# name: "AssetName", # required
# owning_project_identifier: "ProjectId", # required
@@ -1291,11 +1299,11 @@
# forms_input: [
# {
# content: "FormInputContentString",
# form_name: "FormName", # required
# type_identifier: "FormTypeIdentifier",
- # type_revision: "Revision",
+ # type_revision: "RevisionInput",
# },
# ],
# glossary_terms: ["GlossaryTermId"],
# identifier: "AssetIdentifier", # required
# name: "AssetName", # required
@@ -1487,11 +1495,11 @@
# forms_input: [
# {
# content: "FormInputContentString",
# form_name: "FormName", # required
# type_identifier: "FormTypeIdentifier",
- # type_revision: "Revision",
+ # type_revision: "RevisionInput",
# },
# ],
# glossary_terms: ["GlossaryTermId"],
# items: [
# {
@@ -1597,11 +1605,11 @@
# forms_input: [
# {
# content: "FormInputContentString",
# form_name: "FormName", # required
# type_identifier: "FormTypeIdentifier",
- # type_revision: "Revision",
+ # type_revision: "RevisionInput",
# },
# ],
# glossary_terms: ["GlossaryTermId"],
# identifier: "DataProductId", # required
# items: [
@@ -1731,11 +1739,11 @@
# asset_forms_input: [
# {
# content: "FormInputContentString",
# form_name: "FormName", # required
# type_identifier: "FormTypeIdentifier",
- # type_revision: "Revision",
+ # type_revision: "RevisionInput",
# },
# ],
# client_token: "String",
# configuration: {
# glue_run_configuration: {
@@ -2721,10 +2729,131 @@
def create_project_membership(params = {}, options = {})
req = build_request(:create_project_membership, params)
req.send_request(options)
end
+ # Creates a rule in Amazon DataZone. A rule is a formal agreement that
+ # enforces specific requirements across user workflows (e.g., publishing
+ # assets to the catalog, requesting subscriptions, creating projects)
+ # within the Amazon DataZone data portal. These rules help maintain
+ # consistency, ensure compliance, and uphold governance standards in
+ # data management processes. For instance, a metadata enforcement rule
+ # can specify the required information for creating a subscription
+ # request or publishing a data asset to the catalog, ensuring alignment
+ # with organizational standards.
+ #
+ # @option params [required, String] :action
+ # The action of the rule.
+ #
+ # @option params [String] :client_token
+ # A unique, case-sensitive identifier that is provided to ensure the
+ # idempotency of the request.
+ #
+ # **A suitable default value is auto-generated.** You should normally
+ # not need to pass this option.**
+ #
+ # @option params [String] :description
+ # The description of the rule.
+ #
+ # @option params [required, Types::RuleDetail] :detail
+ # The detail of the rule.
+ #
+ # @option params [required, String] :domain_identifier
+ # The ID of the domain where the rule is created.
+ #
+ # @option params [required, String] :name
+ # The name of the rule.
+ #
+ # @option params [required, Types::RuleScope] :scope
+ # The scope of the rule.
+ #
+ # @option params [required, Types::RuleTarget] :target
+ # The target of the rule.
+ #
+ # @return [Types::CreateRuleOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::CreateRuleOutput#action #action} => String
+ # * {Types::CreateRuleOutput#created_at #created_at} => Time
+ # * {Types::CreateRuleOutput#created_by #created_by} => String
+ # * {Types::CreateRuleOutput#description #description} => String
+ # * {Types::CreateRuleOutput#detail #detail} => Types::RuleDetail
+ # * {Types::CreateRuleOutput#identifier #identifier} => String
+ # * {Types::CreateRuleOutput#name #name} => String
+ # * {Types::CreateRuleOutput#rule_type #rule_type} => String
+ # * {Types::CreateRuleOutput#scope #scope} => Types::RuleScope
+ # * {Types::CreateRuleOutput#target #target} => Types::RuleTarget
+ # * {Types::CreateRuleOutput#target_type #target_type} => String
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.create_rule({
+ # action: "CREATE_SUBSCRIPTION_REQUEST", # required, accepts CREATE_SUBSCRIPTION_REQUEST
+ # client_token: "ClientToken",
+ # description: "Description",
+ # detail: { # required
+ # metadata_form_enforcement_detail: {
+ # required_metadata_forms: [
+ # {
+ # type_identifier: "FormTypeIdentifier", # required
+ # type_revision: "Revision", # required
+ # },
+ # ],
+ # },
+ # },
+ # domain_identifier: "DomainId", # required
+ # name: "RuleName", # required
+ # scope: { # required
+ # asset_type: {
+ # selection_mode: "ALL", # required, accepts ALL, SPECIFIC
+ # specific_asset_types: ["AssetTypeIdentifier"],
+ # },
+ # data_product: false,
+ # project: {
+ # selection_mode: "ALL", # required, accepts ALL, SPECIFIC
+ # specific_projects: ["ProjectId"],
+ # },
+ # },
+ # target: { # required
+ # domain_unit_target: {
+ # domain_unit_id: "DomainUnitId", # required
+ # include_child_domain_units: false,
+ # },
+ # },
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.action #=> String, one of "CREATE_SUBSCRIPTION_REQUEST"
+ # resp.created_at #=> Time
+ # resp.created_by #=> String
+ # resp.description #=> String
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms #=> Array
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms[0].type_identifier #=> String
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms[0].type_revision #=> String
+ # resp.identifier #=> String
+ # resp.name #=> String
+ # resp.rule_type #=> String, one of "METADATA_FORM_ENFORCEMENT"
+ # resp.scope.asset_type.selection_mode #=> String, one of "ALL", "SPECIFIC"
+ # resp.scope.asset_type.specific_asset_types #=> Array
+ # resp.scope.asset_type.specific_asset_types[0] #=> String
+ # resp.scope.data_product #=> Boolean
+ # resp.scope.project.selection_mode #=> String, one of "ALL", "SPECIFIC"
+ # resp.scope.project.specific_projects #=> Array
+ # resp.scope.project.specific_projects[0] #=> String
+ # resp.target.domain_unit_target.domain_unit_id #=> String
+ # resp.target.domain_unit_target.include_child_domain_units #=> Boolean
+ # resp.target_type #=> String, one of "DOMAIN_UNIT"
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateRule AWS API Documentation
+ #
+ # @overload create_rule(params = {})
+ # @param [Hash] params ({})
+ def create_rule(params = {}, options = {})
+ req = build_request(:create_rule, params)
+ req.send_request(options)
+ end
+
# Creates a subsscription grant in Amazon DataZone.
#
# @option params [Array<Types::AssetTargetNameMap>] :asset_target_names
# The names of the assets for which the subscription grant is created.
#
@@ -2831,10 +2960,13 @@
#
# @option params [required, String] :domain_identifier
# The ID of the Amazon DataZone domain in which the subscription request
# is created.
#
+ # @option params [Array<Types::FormInput>] :metadata_forms
+ # The metadata form included in the subscription request.
+ #
# @option params [required, String] :request_reason
# The reason for the subscription request.
#
# @option params [required, Array<Types::SubscribedListingInput>] :subscribed_listings
# The published asset for which the subscription grant is to be created.
@@ -2847,11 +2979,13 @@
#
# * {Types::CreateSubscriptionRequestOutput#created_at #created_at} => Time
# * {Types::CreateSubscriptionRequestOutput#created_by #created_by} => String
# * {Types::CreateSubscriptionRequestOutput#decision_comment #decision_comment} => String
# * {Types::CreateSubscriptionRequestOutput#domain_id #domain_id} => String
+ # * {Types::CreateSubscriptionRequestOutput#existing_subscription_id #existing_subscription_id} => String
# * {Types::CreateSubscriptionRequestOutput#id #id} => String
+ # * {Types::CreateSubscriptionRequestOutput#metadata_forms #metadata_forms} => Array<Types::FormOutput>
# * {Types::CreateSubscriptionRequestOutput#request_reason #request_reason} => String
# * {Types::CreateSubscriptionRequestOutput#reviewer_id #reviewer_id} => String
# * {Types::CreateSubscriptionRequestOutput#status #status} => String
# * {Types::CreateSubscriptionRequestOutput#subscribed_listings #subscribed_listings} => Array<Types::SubscribedListing>
# * {Types::CreateSubscriptionRequestOutput#subscribed_principals #subscribed_principals} => Array<Types::SubscribedPrincipal>
@@ -2861,10 +2995,18 @@
# @example Request syntax with placeholder values
#
# resp = client.create_subscription_request({
# client_token: "String",
# domain_identifier: "DomainId", # required
+ # metadata_forms: [
+ # {
+ # content: "FormInputContentString",
+ # form_name: "FormName", # required
+ # type_identifier: "FormTypeIdentifier",
+ # type_revision: "RevisionInput",
+ # },
+ # ],
# request_reason: "RequestReason", # required
# subscribed_listings: [ # required
# {
# identifier: "ListingId", # required
# },
@@ -2882,11 +3024,17 @@
#
# resp.created_at #=> Time
# resp.created_by #=> String
# resp.decision_comment #=> String
# resp.domain_id #=> String
+ # resp.existing_subscription_id #=> String
# resp.id #=> String
+ # resp.metadata_forms #=> Array
+ # resp.metadata_forms[0].content #=> String
+ # resp.metadata_forms[0].form_name #=> String
+ # resp.metadata_forms[0].type_name #=> String
+ # resp.metadata_forms[0].type_revision #=> String
# resp.request_reason #=> String
# resp.reviewer_id #=> String
# resp.status #=> String, one of "PENDING", "ACCEPTED", "REJECTED"
# resp.subscribed_listings #=> Array
# resp.subscribed_listings[0].description #=> String
@@ -3680,10 +3828,44 @@
def delete_project_membership(params = {}, options = {})
req = build_request(:delete_project_membership, params)
req.send_request(options)
end
+ # Deletes a rule in Amazon DataZone. A rule is a formal agreement that
+ # enforces specific requirements across user workflows (e.g., publishing
+ # assets to the catalog, requesting subscriptions, creating projects)
+ # within the Amazon DataZone data portal. These rules help maintain
+ # consistency, ensure compliance, and uphold governance standards in
+ # data management processes. For instance, a metadata enforcement rule
+ # can specify the required information for creating a subscription
+ # request or publishing a data asset to the catalog, ensuring alignment
+ # with organizational standards.
+ #
+ # @option params [required, String] :domain_identifier
+ # The ID of the domain that where the rule is to be deleted.
+ #
+ # @option params [required, String] :identifier
+ # The ID of the rule that is to be deleted.
+ #
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.delete_rule({
+ # domain_identifier: "DomainId", # required
+ # identifier: "RuleId", # required
+ # })
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteRule AWS API Documentation
+ #
+ # @overload delete_rule(params = {})
+ # @param [Hash] params ({})
+ def delete_rule(params = {}, options = {})
+ req = build_request(:delete_rule, params)
+ req.send_request(options)
+ end
+
# Deletes and subscription grant in Amazon DataZone.
#
# @option params [required, String] :domain_identifier
# The ID of the Amazon DataZone domain where the subscription grant is
# deleted.
@@ -5327,10 +5509,89 @@
def get_project(params = {}, options = {})
req = build_request(:get_project, params)
req.send_request(options)
end
+ # Gets the details of a rule in Amazon DataZone. A rule is a formal
+ # agreement that enforces specific requirements across user workflows
+ # (e.g., publishing assets to the catalog, requesting subscriptions,
+ # creating projects) within the Amazon DataZone data portal. These rules
+ # help maintain consistency, ensure compliance, and uphold governance
+ # standards in data management processes. For instance, a metadata
+ # enforcement rule can specify the required information for creating a
+ # subscription request or publishing a data asset to the catalog,
+ # ensuring alignment with organizational standards.
+ #
+ # @option params [required, String] :domain_identifier
+ # The ID of the domain where the `GetRule` action is to be invoked.
+ #
+ # @option params [required, String] :identifier
+ # The ID of the rule.
+ #
+ # @option params [String] :revision
+ # The revision of the rule.
+ #
+ # @return [Types::GetRuleOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::GetRuleOutput#action #action} => String
+ # * {Types::GetRuleOutput#created_at #created_at} => Time
+ # * {Types::GetRuleOutput#created_by #created_by} => String
+ # * {Types::GetRuleOutput#description #description} => String
+ # * {Types::GetRuleOutput#detail #detail} => Types::RuleDetail
+ # * {Types::GetRuleOutput#identifier #identifier} => String
+ # * {Types::GetRuleOutput#last_updated_by #last_updated_by} => String
+ # * {Types::GetRuleOutput#name #name} => String
+ # * {Types::GetRuleOutput#revision #revision} => String
+ # * {Types::GetRuleOutput#rule_type #rule_type} => String
+ # * {Types::GetRuleOutput#scope #scope} => Types::RuleScope
+ # * {Types::GetRuleOutput#target #target} => Types::RuleTarget
+ # * {Types::GetRuleOutput#target_type #target_type} => String
+ # * {Types::GetRuleOutput#updated_at #updated_at} => Time
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.get_rule({
+ # domain_identifier: "DomainId", # required
+ # identifier: "RuleId", # required
+ # revision: "Revision",
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.action #=> String, one of "CREATE_SUBSCRIPTION_REQUEST"
+ # resp.created_at #=> Time
+ # resp.created_by #=> String
+ # resp.description #=> String
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms #=> Array
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms[0].type_identifier #=> String
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms[0].type_revision #=> String
+ # resp.identifier #=> String
+ # resp.last_updated_by #=> String
+ # resp.name #=> String
+ # resp.revision #=> String
+ # resp.rule_type #=> String, one of "METADATA_FORM_ENFORCEMENT"
+ # resp.scope.asset_type.selection_mode #=> String, one of "ALL", "SPECIFIC"
+ # resp.scope.asset_type.specific_asset_types #=> Array
+ # resp.scope.asset_type.specific_asset_types[0] #=> String
+ # resp.scope.data_product #=> Boolean
+ # resp.scope.project.selection_mode #=> String, one of "ALL", "SPECIFIC"
+ # resp.scope.project.specific_projects #=> Array
+ # resp.scope.project.specific_projects[0] #=> String
+ # resp.target.domain_unit_target.domain_unit_id #=> String
+ # resp.target.domain_unit_target.include_child_domain_units #=> Boolean
+ # resp.target_type #=> String, one of "DOMAIN_UNIT"
+ # resp.updated_at #=> Time
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetRule AWS API Documentation
+ #
+ # @overload get_rule(params = {})
+ # @param [Hash] params ({})
+ def get_rule(params = {}, options = {})
+ req = build_request(:get_rule, params)
+ req.send_request(options)
+ end
+
# Gets a subscription in Amazon DataZone.
#
# @option params [required, String] :domain_identifier
# The ID of the Amazon DataZone domain in which the subscription exists.
#
@@ -5490,11 +5751,13 @@
#
# * {Types::GetSubscriptionRequestDetailsOutput#created_at #created_at} => Time
# * {Types::GetSubscriptionRequestDetailsOutput#created_by #created_by} => String
# * {Types::GetSubscriptionRequestDetailsOutput#decision_comment #decision_comment} => String
# * {Types::GetSubscriptionRequestDetailsOutput#domain_id #domain_id} => String
+ # * {Types::GetSubscriptionRequestDetailsOutput#existing_subscription_id #existing_subscription_id} => String
# * {Types::GetSubscriptionRequestDetailsOutput#id #id} => String
+ # * {Types::GetSubscriptionRequestDetailsOutput#metadata_forms #metadata_forms} => Array<Types::FormOutput>
# * {Types::GetSubscriptionRequestDetailsOutput#request_reason #request_reason} => String
# * {Types::GetSubscriptionRequestDetailsOutput#reviewer_id #reviewer_id} => String
# * {Types::GetSubscriptionRequestDetailsOutput#status #status} => String
# * {Types::GetSubscriptionRequestDetailsOutput#subscribed_listings #subscribed_listings} => Array<Types::SubscribedListing>
# * {Types::GetSubscriptionRequestDetailsOutput#subscribed_principals #subscribed_principals} => Array<Types::SubscribedPrincipal>
@@ -5512,11 +5775,17 @@
#
# resp.created_at #=> Time
# resp.created_by #=> String
# resp.decision_comment #=> String
# resp.domain_id #=> String
+ # resp.existing_subscription_id #=> String
# resp.id #=> String
+ # resp.metadata_forms #=> Array
+ # resp.metadata_forms[0].content #=> String
+ # resp.metadata_forms[0].form_name #=> String
+ # resp.metadata_forms[0].type_name #=> String
+ # resp.metadata_forms[0].type_revision #=> String
# resp.request_reason #=> String
# resp.reviewer_id #=> String
# resp.status #=> String, one of "PENDING", "ACCEPTED", "REJECTED"
# resp.subscribed_listings #=> Array
# resp.subscribed_listings[0].description #=> String
@@ -7156,10 +7425,115 @@
def list_projects(params = {}, options = {})
req = build_request(:list_projects, params)
req.send_request(options)
end
+ # Lists existing rules. In Amazon DataZone, a rule is a formal agreement
+ # that enforces specific requirements across user workflows (e.g.,
+ # publishing assets to the catalog, requesting subscriptions, creating
+ # projects) within the Amazon DataZone data portal. These rules help
+ # maintain consistency, ensure compliance, and uphold governance
+ # standards in data management processes. For instance, a metadata
+ # enforcement rule can specify the required information for creating a
+ # subscription request or publishing a data asset to the catalog,
+ # ensuring alignment with organizational standards.
+ #
+ # @option params [String] :action
+ # The action of the rule.
+ #
+ # @option params [Array<String>] :asset_types
+ # The asset types of the rule.
+ #
+ # @option params [Boolean] :data_product
+ # The data product of the rule.
+ #
+ # @option params [required, String] :domain_identifier
+ # The ID of the domain in which the rules are to be listed.
+ #
+ # @option params [Boolean] :include_cascaded
+ # Specifies whether to include cascading rules in the results.
+ #
+ # @option params [Integer] :max_results
+ # The maximum number of rules to return in a single call to `ListRules`.
+ # When the number of rules to be listed is greater than the value of
+ # `MaxResults`, the response contains a `NextToken` value that you can
+ # use in a subsequent call to `ListRules` to list the next set of rules.
+ #
+ # @option params [String] :next_token
+ # When the number of rules is greater than the default value for the
+ # `MaxResults` parameter, or if you explicitly specify a value for
+ # `MaxResults` that is less than the number of rules, the response
+ # includes a pagination token named `NextToken`. You can specify this
+ # `NextToken` value in a subsequent call to `ListRules` to list the next
+ # set of rules.
+ #
+ # @option params [Array<String>] :project_ids
+ # The IDs of projects in which rules are to be listed.
+ #
+ # @option params [String] :rule_type
+ # The type of the rule.
+ #
+ # @option params [required, String] :target_identifier
+ # The target ID of the rule.
+ #
+ # @option params [required, String] :target_type
+ # The target type of the rule.
+ #
+ # @return [Types::ListRulesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::ListRulesOutput#items #items} => Array<Types::RuleSummary>
+ # * {Types::ListRulesOutput#next_token #next_token} => String
+ #
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.list_rules({
+ # action: "CREATE_SUBSCRIPTION_REQUEST", # accepts CREATE_SUBSCRIPTION_REQUEST
+ # asset_types: ["AssetTypeIdentifier"],
+ # data_product: false,
+ # domain_identifier: "DomainId", # required
+ # include_cascaded: false,
+ # max_results: 1,
+ # next_token: "PaginationToken",
+ # project_ids: ["ProjectId"],
+ # rule_type: "METADATA_FORM_ENFORCEMENT", # accepts METADATA_FORM_ENFORCEMENT
+ # target_identifier: "String", # required
+ # target_type: "DOMAIN_UNIT", # required, accepts DOMAIN_UNIT
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.items #=> Array
+ # resp.items[0].action #=> String, one of "CREATE_SUBSCRIPTION_REQUEST"
+ # resp.items[0].identifier #=> String
+ # resp.items[0].last_updated_by #=> String
+ # resp.items[0].name #=> String
+ # resp.items[0].revision #=> String
+ # resp.items[0].rule_type #=> String, one of "METADATA_FORM_ENFORCEMENT"
+ # resp.items[0].scope.asset_type.selection_mode #=> String, one of "ALL", "SPECIFIC"
+ # resp.items[0].scope.asset_type.specific_asset_types #=> Array
+ # resp.items[0].scope.asset_type.specific_asset_types[0] #=> String
+ # resp.items[0].scope.data_product #=> Boolean
+ # resp.items[0].scope.project.selection_mode #=> String, one of "ALL", "SPECIFIC"
+ # resp.items[0].scope.project.specific_projects #=> Array
+ # resp.items[0].scope.project.specific_projects[0] #=> String
+ # resp.items[0].target.domain_unit_target.domain_unit_id #=> String
+ # resp.items[0].target.domain_unit_target.include_child_domain_units #=> Boolean
+ # resp.items[0].target_type #=> String, one of "DOMAIN_UNIT"
+ # resp.items[0].updated_at #=> Time
+ # resp.next_token #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListRules AWS API Documentation
+ #
+ # @overload list_rules(params = {})
+ # @param [Hash] params ({})
+ def list_rules(params = {}, options = {})
+ req = build_request(:list_rules, params)
+ req.send_request(options)
+ end
+
# Lists subscription grants.
#
# @option params [required, String] :domain_identifier
# The identifier of the Amazon DataZone domain.
#
@@ -7330,11 +7704,16 @@
# resp.items #=> Array
# resp.items[0].created_at #=> Time
# resp.items[0].created_by #=> String
# resp.items[0].decision_comment #=> String
# resp.items[0].domain_id #=> String
+ # resp.items[0].existing_subscription_id #=> String
# resp.items[0].id #=> String
+ # resp.items[0].metadata_forms_summary #=> Array
+ # resp.items[0].metadata_forms_summary[0].form_name #=> String
+ # resp.items[0].metadata_forms_summary[0].type_name #=> String
+ # resp.items[0].metadata_forms_summary[0].type_revision #=> String
# resp.items[0].request_reason #=> String
# resp.items[0].reviewer_id #=> String
# resp.items[0].status #=> String, one of "PENDING", "ACCEPTED", "REJECTED"
# resp.items[0].subscribed_listings #=> Array
# resp.items[0].subscribed_listings[0].description #=> String
@@ -7973,11 +8352,13 @@
#
# * {Types::RejectSubscriptionRequestOutput#created_at #created_at} => Time
# * {Types::RejectSubscriptionRequestOutput#created_by #created_by} => String
# * {Types::RejectSubscriptionRequestOutput#decision_comment #decision_comment} => String
# * {Types::RejectSubscriptionRequestOutput#domain_id #domain_id} => String
+ # * {Types::RejectSubscriptionRequestOutput#existing_subscription_id #existing_subscription_id} => String
# * {Types::RejectSubscriptionRequestOutput#id #id} => String
+ # * {Types::RejectSubscriptionRequestOutput#metadata_forms #metadata_forms} => Array<Types::FormOutput>
# * {Types::RejectSubscriptionRequestOutput#request_reason #request_reason} => String
# * {Types::RejectSubscriptionRequestOutput#reviewer_id #reviewer_id} => String
# * {Types::RejectSubscriptionRequestOutput#status #status} => String
# * {Types::RejectSubscriptionRequestOutput#subscribed_listings #subscribed_listings} => Array<Types::SubscribedListing>
# * {Types::RejectSubscriptionRequestOutput#subscribed_principals #subscribed_principals} => Array<Types::SubscribedPrincipal>
@@ -7996,11 +8377,17 @@
#
# resp.created_at #=> Time
# resp.created_by #=> String
# resp.decision_comment #=> String
# resp.domain_id #=> String
+ # resp.existing_subscription_id #=> String
# resp.id #=> String
+ # resp.metadata_forms #=> Array
+ # resp.metadata_forms[0].content #=> String
+ # resp.metadata_forms[0].form_name #=> String
+ # resp.metadata_forms[0].type_name #=> String
+ # resp.metadata_forms[0].type_revision #=> String
# resp.request_reason #=> String
# resp.reviewer_id #=> String
# resp.status #=> String, one of "PENDING", "ACCEPTED", "REJECTED"
# resp.subscribed_listings #=> Array
# resp.subscribed_listings[0].description #=> String
@@ -9255,11 +9642,11 @@
# asset_forms_input: [
# {
# content: "FormInputContentString",
# form_name: "FormName", # required
# type_identifier: "FormTypeIdentifier",
- # type_revision: "Revision",
+ # type_revision: "RevisionInput",
# },
# ],
# configuration: {
# glue_run_configuration: {
# auto_import_data_quality_result: false,
@@ -10038,10 +10425,122 @@
def update_project(params = {}, options = {})
req = build_request(:update_project, params)
req.send_request(options)
end
+ # Updates a rule. In Amazon DataZone, a rule is a formal agreement that
+ # enforces specific requirements across user workflows (e.g., publishing
+ # assets to the catalog, requesting subscriptions, creating projects)
+ # within the Amazon DataZone data portal. These rules help maintain
+ # consistency, ensure compliance, and uphold governance standards in
+ # data management processes. For instance, a metadata enforcement rule
+ # can specify the required information for creating a subscription
+ # request or publishing a data asset to the catalog, ensuring alignment
+ # with organizational standards.
+ #
+ # @option params [String] :description
+ # The description of the rule.
+ #
+ # @option params [Types::RuleDetail] :detail
+ # The detail of the rule.
+ #
+ # @option params [required, String] :domain_identifier
+ # The ID of the domain in which a rule is to be updated.
+ #
+ # @option params [required, String] :identifier
+ # The ID of the rule that is to be updated
+ #
+ # @option params [Boolean] :include_child_domain_units
+ # Specifies whether to update this rule in the child domain units.
+ #
+ # @option params [String] :name
+ # The name of the rule.
+ #
+ # @option params [Types::RuleScope] :scope
+ # The scrope of the rule.
+ #
+ # @return [Types::UpdateRuleOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::UpdateRuleOutput#action #action} => String
+ # * {Types::UpdateRuleOutput#created_at #created_at} => Time
+ # * {Types::UpdateRuleOutput#created_by #created_by} => String
+ # * {Types::UpdateRuleOutput#description #description} => String
+ # * {Types::UpdateRuleOutput#detail #detail} => Types::RuleDetail
+ # * {Types::UpdateRuleOutput#identifier #identifier} => String
+ # * {Types::UpdateRuleOutput#last_updated_by #last_updated_by} => String
+ # * {Types::UpdateRuleOutput#name #name} => String
+ # * {Types::UpdateRuleOutput#revision #revision} => String
+ # * {Types::UpdateRuleOutput#rule_type #rule_type} => String
+ # * {Types::UpdateRuleOutput#scope #scope} => Types::RuleScope
+ # * {Types::UpdateRuleOutput#target #target} => Types::RuleTarget
+ # * {Types::UpdateRuleOutput#updated_at #updated_at} => Time
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.update_rule({
+ # description: "Description",
+ # detail: {
+ # metadata_form_enforcement_detail: {
+ # required_metadata_forms: [
+ # {
+ # type_identifier: "FormTypeIdentifier", # required
+ # type_revision: "Revision", # required
+ # },
+ # ],
+ # },
+ # },
+ # domain_identifier: "DomainId", # required
+ # identifier: "RuleId", # required
+ # include_child_domain_units: false,
+ # name: "RuleName",
+ # scope: {
+ # asset_type: {
+ # selection_mode: "ALL", # required, accepts ALL, SPECIFIC
+ # specific_asset_types: ["AssetTypeIdentifier"],
+ # },
+ # data_product: false,
+ # project: {
+ # selection_mode: "ALL", # required, accepts ALL, SPECIFIC
+ # specific_projects: ["ProjectId"],
+ # },
+ # },
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.action #=> String, one of "CREATE_SUBSCRIPTION_REQUEST"
+ # resp.created_at #=> Time
+ # resp.created_by #=> String
+ # resp.description #=> String
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms #=> Array
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms[0].type_identifier #=> String
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms[0].type_revision #=> String
+ # resp.identifier #=> String
+ # resp.last_updated_by #=> String
+ # resp.name #=> String
+ # resp.revision #=> String
+ # resp.rule_type #=> String, one of "METADATA_FORM_ENFORCEMENT"
+ # resp.scope.asset_type.selection_mode #=> String, one of "ALL", "SPECIFIC"
+ # resp.scope.asset_type.specific_asset_types #=> Array
+ # resp.scope.asset_type.specific_asset_types[0] #=> String
+ # resp.scope.data_product #=> Boolean
+ # resp.scope.project.selection_mode #=> String, one of "ALL", "SPECIFIC"
+ # resp.scope.project.specific_projects #=> Array
+ # resp.scope.project.specific_projects[0] #=> String
+ # resp.target.domain_unit_target.domain_unit_id #=> String
+ # resp.target.domain_unit_target.include_child_domain_units #=> Boolean
+ # resp.updated_at #=> Time
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateRule AWS API Documentation
+ #
+ # @overload update_rule(params = {})
+ # @param [Hash] params ({})
+ def update_rule(params = {}, options = {})
+ req = build_request(:update_rule, params)
+ req.send_request(options)
+ end
+
# Updates the status of the specified subscription grant status in
# Amazon DataZone.
#
# @option params [required, String] :asset_identifier
# The identifier of the asset the subscription grant status of which is
@@ -10146,11 +10645,13 @@
#
# * {Types::UpdateSubscriptionRequestOutput#created_at #created_at} => Time
# * {Types::UpdateSubscriptionRequestOutput#created_by #created_by} => String
# * {Types::UpdateSubscriptionRequestOutput#decision_comment #decision_comment} => String
# * {Types::UpdateSubscriptionRequestOutput#domain_id #domain_id} => String
+ # * {Types::UpdateSubscriptionRequestOutput#existing_subscription_id #existing_subscription_id} => String
# * {Types::UpdateSubscriptionRequestOutput#id #id} => String
+ # * {Types::UpdateSubscriptionRequestOutput#metadata_forms #metadata_forms} => Array<Types::FormOutput>
# * {Types::UpdateSubscriptionRequestOutput#request_reason #request_reason} => String
# * {Types::UpdateSubscriptionRequestOutput#reviewer_id #reviewer_id} => String
# * {Types::UpdateSubscriptionRequestOutput#status #status} => String
# * {Types::UpdateSubscriptionRequestOutput#subscribed_listings #subscribed_listings} => Array<Types::SubscribedListing>
# * {Types::UpdateSubscriptionRequestOutput#subscribed_principals #subscribed_principals} => Array<Types::SubscribedPrincipal>
@@ -10169,11 +10670,17 @@
#
# resp.created_at #=> Time
# resp.created_by #=> String
# resp.decision_comment #=> String
# resp.domain_id #=> String
+ # resp.existing_subscription_id #=> String
# resp.id #=> String
+ # resp.metadata_forms #=> Array
+ # resp.metadata_forms[0].content #=> String
+ # resp.metadata_forms[0].form_name #=> String
+ # resp.metadata_forms[0].type_name #=> String
+ # resp.metadata_forms[0].type_revision #=> String
# resp.request_reason #=> String
# resp.reviewer_id #=> String
# resp.status #=> String, one of "PENDING", "ACCEPTED", "REJECTED"
# resp.subscribed_listings #=> Array
# resp.subscribed_listings[0].description #=> String
@@ -10393,10 +10900,10 @@
params: params,
config: config,
tracer: tracer
)
context[:gem_name] = 'aws-sdk-datazone'
- context[:gem_version] = '1.27.0'
+ context[:gem_version] = '1.28.0'
Seahorse::Client::Request.new(handlers, context)
end
# @api private
# @deprecated