aws-sdk-datazone 1.27.0 → 1.29.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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"
@@ -714,6 +722,8 @@ module Aws::DataZone
714
722
  # },
715
723
  # create_environment: {
716
724
  # },
725
+ # create_environment_from_blueprint: {
726
+ # },
717
727
  # create_environment_profile: {
718
728
  # domain_unit_id: "DomainUnitId",
719
729
  # },
@@ -726,6 +736,10 @@ module Aws::DataZone
726
736
  # create_project: {
727
737
  # include_child_domain_units: false,
728
738
  # },
739
+ # create_project_from_project_profile: {
740
+ # include_child_domain_units: false,
741
+ # project_profiles: ["String"],
742
+ # },
729
743
  # delegate_create_environment_profile: {
730
744
  # },
731
745
  # override_domain_unit_owners: {
@@ -738,7 +752,7 @@ module Aws::DataZone
738
752
  # domain_identifier: "DomainId", # required
739
753
  # entity_identifier: "String", # required
740
754
  # entity_type: "DOMAIN_UNIT", # required, accepts DOMAIN_UNIT, ENVIRONMENT_BLUEPRINT_CONFIGURATION, ENVIRONMENT_PROFILE
741
- # policy_type: "CREATE_DOMAIN_UNIT", # required, accepts CREATE_DOMAIN_UNIT, OVERRIDE_DOMAIN_UNIT_OWNERS, ADD_TO_PROJECT_MEMBER_POOL, OVERRIDE_PROJECT_OWNERS, CREATE_GLOSSARY, CREATE_FORM_TYPE, CREATE_ASSET_TYPE, CREATE_PROJECT, CREATE_ENVIRONMENT_PROFILE, DELEGATE_CREATE_ENVIRONMENT_PROFILE, CREATE_ENVIRONMENT
755
+ # policy_type: "CREATE_DOMAIN_UNIT", # required, accepts CREATE_DOMAIN_UNIT, OVERRIDE_DOMAIN_UNIT_OWNERS, ADD_TO_PROJECT_MEMBER_POOL, OVERRIDE_PROJECT_OWNERS, CREATE_GLOSSARY, CREATE_FORM_TYPE, CREATE_ASSET_TYPE, CREATE_PROJECT, CREATE_ENVIRONMENT_PROFILE, DELEGATE_CREATE_ENVIRONMENT_PROFILE, CREATE_ENVIRONMENT, CREATE_ENVIRONMENT_FROM_BLUEPRINT, CREATE_PROJECT_FROM_PROJECT_PROFILE
742
756
  # principal: { # required
743
757
  # domain_unit: {
744
758
  # domain_unit_designation: "OWNER", # required, accepts OWNER
@@ -992,7 +1006,7 @@ module Aws::DataZone
992
1006
  # content: "FormInputContentString",
993
1007
  # form_name: "FormName", # required
994
1008
  # type_identifier: "FormTypeIdentifier",
995
- # type_revision: "Revision",
1009
+ # type_revision: "RevisionInput",
996
1010
  # },
997
1011
  # ],
998
1012
  # glossary_terms: ["GlossaryTermId"],
@@ -1293,7 +1307,7 @@ module Aws::DataZone
1293
1307
  # content: "FormInputContentString",
1294
1308
  # form_name: "FormName", # required
1295
1309
  # type_identifier: "FormTypeIdentifier",
1296
- # type_revision: "Revision",
1310
+ # type_revision: "RevisionInput",
1297
1311
  # },
1298
1312
  # ],
1299
1313
  # glossary_terms: ["GlossaryTermId"],
@@ -1431,6 +1445,293 @@ module Aws::DataZone
1431
1445
  req.send_request(options)
1432
1446
  end
1433
1447
 
1448
+ # Creates a new connection. In Amazon DataZone, a connection enables you
1449
+ # to connect your resources (domains, projects, and environments) to
1450
+ # external resources and services.
1451
+ #
1452
+ # @option params [Types::AwsLocation] :aws_location
1453
+ # The location where the connection is created.
1454
+ #
1455
+ # @option params [String] :client_token
1456
+ # A unique, case-sensitive identifier that is provided to ensure the
1457
+ # idempotency of the request.
1458
+ #
1459
+ # **A suitable default value is auto-generated.** You should normally
1460
+ # not need to pass this option.**
1461
+ #
1462
+ # @option params [String] :description
1463
+ # A connection description.
1464
+ #
1465
+ # @option params [required, String] :domain_identifier
1466
+ # The ID of the domain where the connection is created.
1467
+ #
1468
+ # @option params [required, String] :environment_identifier
1469
+ # The ID of the environment where the connection is created.
1470
+ #
1471
+ # @option params [required, String] :name
1472
+ # The connection name.
1473
+ #
1474
+ # @option params [Types::ConnectionPropertiesInput] :props
1475
+ # The connection props.
1476
+ #
1477
+ # @return [Types::CreateConnectionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1478
+ #
1479
+ # * {Types::CreateConnectionOutput#connection_id #connection_id} => String
1480
+ # * {Types::CreateConnectionOutput#description #description} => String
1481
+ # * {Types::CreateConnectionOutput#domain_id #domain_id} => String
1482
+ # * {Types::CreateConnectionOutput#domain_unit_id #domain_unit_id} => String
1483
+ # * {Types::CreateConnectionOutput#environment_id #environment_id} => String
1484
+ # * {Types::CreateConnectionOutput#name #name} => String
1485
+ # * {Types::CreateConnectionOutput#physical_endpoints #physical_endpoints} => Array<Types::PhysicalEndpoint>
1486
+ # * {Types::CreateConnectionOutput#project_id #project_id} => String
1487
+ # * {Types::CreateConnectionOutput#props #props} => Types::ConnectionPropertiesOutput
1488
+ # * {Types::CreateConnectionOutput#type #type} => String
1489
+ #
1490
+ # @example Request syntax with placeholder values
1491
+ #
1492
+ # resp = client.create_connection({
1493
+ # aws_location: {
1494
+ # access_role: "AwsLocationAccessRoleString",
1495
+ # aws_account_id: "AwsAccountId",
1496
+ # aws_region: "AwsRegion",
1497
+ # iam_connection_id: "ConnectionId",
1498
+ # },
1499
+ # client_token: "String",
1500
+ # description: "CreateConnectionInputDescriptionString",
1501
+ # domain_identifier: "DomainId", # required
1502
+ # environment_identifier: "EnvironmentId", # required
1503
+ # name: "ConnectionName", # required
1504
+ # props: {
1505
+ # athena_properties: {
1506
+ # workgroup_name: "AthenaPropertiesInputWorkgroupNameString",
1507
+ # },
1508
+ # glue_properties: {
1509
+ # glue_connection_input: {
1510
+ # athena_properties: {
1511
+ # "PropertyMapKeyString" => "PropertyMapValueString",
1512
+ # },
1513
+ # authentication_configuration: {
1514
+ # authentication_type: "BASIC", # accepts BASIC, OAUTH2, CUSTOM
1515
+ # basic_authentication_credentials: {
1516
+ # password: "BasicAuthenticationCredentialsPasswordString",
1517
+ # user_name: "BasicAuthenticationCredentialsUserNameString",
1518
+ # },
1519
+ # custom_authentication_credentials: {
1520
+ # "CredentialMapKeyString" => "CredentialMapValueString",
1521
+ # },
1522
+ # kms_key_arn: "AuthenticationConfigurationInputKmsKeyArnString",
1523
+ # o_auth_2_properties: {
1524
+ # authorization_code_properties: {
1525
+ # authorization_code: "AuthorizationCodePropertiesAuthorizationCodeString",
1526
+ # redirect_uri: "AuthorizationCodePropertiesRedirectUriString",
1527
+ # },
1528
+ # o_auth_2_client_application: {
1529
+ # a_ws_managed_client_application_reference: "OAuth2ClientApplicationAWSManagedClientApplicationReferenceString",
1530
+ # user_managed_client_application_client_id: "OAuth2ClientApplicationUserManagedClientApplicationClientIdString",
1531
+ # },
1532
+ # o_auth_2_credentials: {
1533
+ # access_token: "GlueOAuth2CredentialsAccessTokenString",
1534
+ # jwt_token: "GlueOAuth2CredentialsJwtTokenString",
1535
+ # refresh_token: "GlueOAuth2CredentialsRefreshTokenString",
1536
+ # user_managed_client_application_client_secret: "GlueOAuth2CredentialsUserManagedClientApplicationClientSecretString",
1537
+ # },
1538
+ # o_auth_2_grant_type: "AUTHORIZATION_CODE", # accepts AUTHORIZATION_CODE, CLIENT_CREDENTIALS, JWT_BEARER
1539
+ # token_url: "OAuth2PropertiesTokenUrlString",
1540
+ # token_url_parameters_map: {
1541
+ # "TokenUrlParametersMapKeyString" => "TokenUrlParametersMapValueString",
1542
+ # },
1543
+ # },
1544
+ # secret_arn: "AuthenticationConfigurationInputSecretArnString",
1545
+ # },
1546
+ # connection_properties: {
1547
+ # "String" => "ConnectionPropertiesValueString",
1548
+ # },
1549
+ # connection_type: "SNOWFLAKE", # accepts SNOWFLAKE, BIGQUERY, DOCUMENTDB, DYNAMODB, MYSQL, OPENSEARCH, ORACLE, POSTGRESQL, REDSHIFT, SAPHANA, SQLSERVER, TERADATA, VERTICA
1550
+ # description: "String",
1551
+ # match_criteria: "GlueConnectionInputMatchCriteriaString",
1552
+ # name: "GlueConnectionInputNameString",
1553
+ # physical_connection_requirements: {
1554
+ # availability_zone: "PhysicalConnectionRequirementsAvailabilityZoneString",
1555
+ # security_group_id_list: ["SecurityGroupIdListMemberString"],
1556
+ # subnet_id: "SubnetId",
1557
+ # subnet_id_list: ["SubnetId"],
1558
+ # },
1559
+ # python_properties: {
1560
+ # "PropertyMapKeyString" => "PropertyMapValueString",
1561
+ # },
1562
+ # spark_properties: {
1563
+ # "PropertyMapKeyString" => "PropertyMapValueString",
1564
+ # },
1565
+ # validate_credentials: false,
1566
+ # validate_for_compute_environments: ["SPARK"], # accepts SPARK, ATHENA, PYTHON
1567
+ # },
1568
+ # },
1569
+ # hyper_pod_properties: {
1570
+ # cluster_name: "HyperPodPropertiesInputClusterNameString", # required
1571
+ # },
1572
+ # iam_properties: {
1573
+ # glue_lineage_sync_enabled: false,
1574
+ # },
1575
+ # redshift_properties: {
1576
+ # credentials: {
1577
+ # secret_arn: "RedshiftCredentialsSecretArnString",
1578
+ # username_password: {
1579
+ # password: "Password", # required
1580
+ # username: "Username", # required
1581
+ # },
1582
+ # },
1583
+ # database_name: "RedshiftPropertiesInputDatabaseNameString",
1584
+ # host: "RedshiftPropertiesInputHostString",
1585
+ # lineage_sync: {
1586
+ # enabled: false,
1587
+ # schedule: {
1588
+ # schedule: "LineageSyncScheduleScheduleString",
1589
+ # },
1590
+ # },
1591
+ # port: 1,
1592
+ # storage: {
1593
+ # cluster_name: "RedshiftStoragePropertiesClusterNameString",
1594
+ # workgroup_name: "RedshiftStoragePropertiesWorkgroupNameString",
1595
+ # },
1596
+ # },
1597
+ # spark_emr_properties: {
1598
+ # compute_arn: "SparkEmrPropertiesInputComputeArnString",
1599
+ # instance_profile_arn: "SparkEmrPropertiesInputInstanceProfileArnString",
1600
+ # java_virtual_env: "SparkEmrPropertiesInputJavaVirtualEnvString",
1601
+ # log_uri: "SparkEmrPropertiesInputLogUriString",
1602
+ # python_virtual_env: "SparkEmrPropertiesInputPythonVirtualEnvString",
1603
+ # runtime_role: "SparkEmrPropertiesInputRuntimeRoleString",
1604
+ # trusted_certificates_s3_uri: "SparkEmrPropertiesInputTrustedCertificatesS3UriString",
1605
+ # },
1606
+ # spark_glue_properties: {
1607
+ # additional_args: {
1608
+ # connection: "String",
1609
+ # },
1610
+ # glue_connection_name: "SparkGluePropertiesInputGlueConnectionNameString",
1611
+ # glue_version: "SparkGluePropertiesInputGlueVersionString",
1612
+ # idle_timeout: 1,
1613
+ # java_virtual_env: "SparkGluePropertiesInputJavaVirtualEnvString",
1614
+ # number_of_workers: 1,
1615
+ # python_virtual_env: "SparkGluePropertiesInputPythonVirtualEnvString",
1616
+ # worker_type: "SparkGluePropertiesInputWorkerTypeString",
1617
+ # },
1618
+ # },
1619
+ # })
1620
+ #
1621
+ # @example Response structure
1622
+ #
1623
+ # resp.connection_id #=> String
1624
+ # resp.description #=> String
1625
+ # resp.domain_id #=> String
1626
+ # resp.domain_unit_id #=> String
1627
+ # resp.environment_id #=> String
1628
+ # resp.name #=> String
1629
+ # resp.physical_endpoints #=> Array
1630
+ # resp.physical_endpoints[0].aws_location.access_role #=> String
1631
+ # resp.physical_endpoints[0].aws_location.aws_account_id #=> String
1632
+ # resp.physical_endpoints[0].aws_location.aws_region #=> String
1633
+ # resp.physical_endpoints[0].aws_location.iam_connection_id #=> String
1634
+ # resp.physical_endpoints[0].glue_connection.athena_properties #=> Hash
1635
+ # resp.physical_endpoints[0].glue_connection.athena_properties["PropertyMapKeyString"] #=> String
1636
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.authentication_type #=> String, one of "BASIC", "OAUTH2", "CUSTOM"
1637
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.authorization_code_properties.authorization_code #=> String
1638
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.authorization_code_properties.redirect_uri #=> String
1639
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_client_application.a_ws_managed_client_application_reference #=> String
1640
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_client_application.user_managed_client_application_client_id #=> String
1641
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_credentials.access_token #=> String
1642
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_credentials.jwt_token #=> String
1643
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_credentials.refresh_token #=> String
1644
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_credentials.user_managed_client_application_client_secret #=> String
1645
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_grant_type #=> String, one of "AUTHORIZATION_CODE", "CLIENT_CREDENTIALS", "JWT_BEARER"
1646
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.token_url #=> String
1647
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.token_url_parameters_map #=> Hash
1648
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.token_url_parameters_map["TokenUrlParametersMapKeyString"] #=> String
1649
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.secret_arn #=> String
1650
+ # resp.physical_endpoints[0].glue_connection.compatible_compute_environments #=> Array
1651
+ # resp.physical_endpoints[0].glue_connection.compatible_compute_environments[0] #=> String, one of "SPARK", "ATHENA", "PYTHON"
1652
+ # resp.physical_endpoints[0].glue_connection.connection_properties #=> Hash
1653
+ # resp.physical_endpoints[0].glue_connection.connection_properties["String"] #=> String
1654
+ # resp.physical_endpoints[0].glue_connection.connection_schema_version #=> Integer
1655
+ # resp.physical_endpoints[0].glue_connection.connection_type #=> String, one of "ATHENA", "BIGQUERY", "DATABRICKS", "DOCUMENTDB", "DYNAMODB", "HYPERPOD", "IAM", "MYSQL", "OPENSEARCH", "ORACLE", "POSTGRESQL", "REDSHIFT", "SAPHANA", "SNOWFLAKE", "SPARK", "SQLSERVER", "TERADATA", "VERTICA", "WORKFLOWS_MWAA"
1656
+ # resp.physical_endpoints[0].glue_connection.creation_time #=> Time
1657
+ # resp.physical_endpoints[0].glue_connection.description #=> String
1658
+ # resp.physical_endpoints[0].glue_connection.last_connection_validation_time #=> Time
1659
+ # resp.physical_endpoints[0].glue_connection.last_updated_by #=> String
1660
+ # resp.physical_endpoints[0].glue_connection.last_updated_time #=> Time
1661
+ # resp.physical_endpoints[0].glue_connection.match_criteria #=> Array
1662
+ # resp.physical_endpoints[0].glue_connection.match_criteria[0] #=> String
1663
+ # resp.physical_endpoints[0].glue_connection.name #=> String
1664
+ # resp.physical_endpoints[0].glue_connection.physical_connection_requirements.availability_zone #=> String
1665
+ # resp.physical_endpoints[0].glue_connection.physical_connection_requirements.security_group_id_list #=> Array
1666
+ # resp.physical_endpoints[0].glue_connection.physical_connection_requirements.security_group_id_list[0] #=> String
1667
+ # resp.physical_endpoints[0].glue_connection.physical_connection_requirements.subnet_id #=> String
1668
+ # resp.physical_endpoints[0].glue_connection.physical_connection_requirements.subnet_id_list #=> Array
1669
+ # resp.physical_endpoints[0].glue_connection.physical_connection_requirements.subnet_id_list[0] #=> String
1670
+ # resp.physical_endpoints[0].glue_connection.python_properties #=> Hash
1671
+ # resp.physical_endpoints[0].glue_connection.python_properties["PropertyMapKeyString"] #=> String
1672
+ # resp.physical_endpoints[0].glue_connection.spark_properties #=> Hash
1673
+ # resp.physical_endpoints[0].glue_connection.spark_properties["PropertyMapKeyString"] #=> String
1674
+ # resp.physical_endpoints[0].glue_connection.status #=> String, one of "CREATING", "CREATE_FAILED", "DELETING", "DELETE_FAILED", "READY", "UPDATING", "UPDATE_FAILED", "DELETED"
1675
+ # resp.physical_endpoints[0].glue_connection.status_reason #=> String
1676
+ # resp.physical_endpoints[0].glue_connection_name #=> String
1677
+ # resp.physical_endpoints[0].host #=> String
1678
+ # resp.physical_endpoints[0].port #=> Integer
1679
+ # resp.physical_endpoints[0].protocol #=> String, one of "ATHENA", "GLUE_INTERACTIVE_SESSION", "HTTPS", "JDBC", "LIVY", "ODBC", "PRISM"
1680
+ # resp.physical_endpoints[0].stage #=> String
1681
+ # resp.project_id #=> String
1682
+ # resp.props.athena_properties.workgroup_name #=> String
1683
+ # resp.props.glue_properties.error_message #=> String
1684
+ # resp.props.glue_properties.status #=> String, one of "CREATING", "CREATE_FAILED", "DELETING", "DELETE_FAILED", "READY", "UPDATING", "UPDATE_FAILED", "DELETED"
1685
+ # resp.props.hyper_pod_properties.cluster_arn #=> String
1686
+ # resp.props.hyper_pod_properties.cluster_name #=> String
1687
+ # resp.props.hyper_pod_properties.orchestrator #=> String, one of "EKS", "SLURM"
1688
+ # resp.props.iam_properties.environment_id #=> String
1689
+ # resp.props.iam_properties.glue_lineage_sync_enabled #=> Boolean
1690
+ # resp.props.redshift_properties.credentials.secret_arn #=> String
1691
+ # resp.props.redshift_properties.credentials.username_password.password #=> String
1692
+ # resp.props.redshift_properties.credentials.username_password.username #=> String
1693
+ # resp.props.redshift_properties.database_name #=> String
1694
+ # resp.props.redshift_properties.is_provisioned_secret #=> Boolean
1695
+ # resp.props.redshift_properties.jdbc_iam_url #=> String
1696
+ # resp.props.redshift_properties.jdbc_url #=> String
1697
+ # resp.props.redshift_properties.lineage_sync.enabled #=> Boolean
1698
+ # resp.props.redshift_properties.lineage_sync.lineage_job_id #=> String
1699
+ # resp.props.redshift_properties.lineage_sync.schedule.schedule #=> String
1700
+ # resp.props.redshift_properties.redshift_temp_dir #=> String
1701
+ # resp.props.redshift_properties.status #=> String, one of "CREATING", "CREATE_FAILED", "DELETING", "DELETE_FAILED", "READY", "UPDATING", "UPDATE_FAILED", "DELETED"
1702
+ # resp.props.redshift_properties.storage.cluster_name #=> String
1703
+ # resp.props.redshift_properties.storage.workgroup_name #=> String
1704
+ # resp.props.spark_emr_properties.compute_arn #=> String
1705
+ # resp.props.spark_emr_properties.credentials.password #=> String
1706
+ # resp.props.spark_emr_properties.credentials.username #=> String
1707
+ # resp.props.spark_emr_properties.credentials_expiration #=> Time
1708
+ # resp.props.spark_emr_properties.governance_type #=> String, one of "AWS_MANAGED", "USER_MANAGED"
1709
+ # resp.props.spark_emr_properties.instance_profile_arn #=> String
1710
+ # resp.props.spark_emr_properties.java_virtual_env #=> String
1711
+ # resp.props.spark_emr_properties.livy_endpoint #=> String
1712
+ # resp.props.spark_emr_properties.log_uri #=> String
1713
+ # resp.props.spark_emr_properties.python_virtual_env #=> String
1714
+ # resp.props.spark_emr_properties.runtime_role #=> String
1715
+ # resp.props.spark_emr_properties.trusted_certificates_s3_uri #=> String
1716
+ # resp.props.spark_glue_properties.additional_args.connection #=> String
1717
+ # resp.props.spark_glue_properties.glue_connection_name #=> String
1718
+ # resp.props.spark_glue_properties.glue_version #=> String
1719
+ # resp.props.spark_glue_properties.idle_timeout #=> Integer
1720
+ # resp.props.spark_glue_properties.java_virtual_env #=> String
1721
+ # resp.props.spark_glue_properties.number_of_workers #=> Integer
1722
+ # resp.props.spark_glue_properties.python_virtual_env #=> String
1723
+ # resp.props.spark_glue_properties.worker_type #=> String
1724
+ # resp.type #=> String, one of "ATHENA", "BIGQUERY", "DATABRICKS", "DOCUMENTDB", "DYNAMODB", "HYPERPOD", "IAM", "MYSQL", "OPENSEARCH", "ORACLE", "POSTGRESQL", "REDSHIFT", "SAPHANA", "SNOWFLAKE", "SPARK", "SQLSERVER", "TERADATA", "VERTICA", "WORKFLOWS_MWAA"
1725
+ #
1726
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateConnection AWS API Documentation
1727
+ #
1728
+ # @overload create_connection(params = {})
1729
+ # @param [Hash] params ({})
1730
+ def create_connection(params = {}, options = {})
1731
+ req = build_request(:create_connection, params)
1732
+ req.send_request(options)
1733
+ end
1734
+
1434
1735
  # Creates a data product.
1435
1736
  #
1436
1737
  # @option params [String] :client_token
@@ -1489,7 +1790,7 @@ module Aws::DataZone
1489
1790
  # content: "FormInputContentString",
1490
1791
  # form_name: "FormName", # required
1491
1792
  # type_identifier: "FormTypeIdentifier",
1492
- # type_revision: "Revision",
1793
+ # type_revision: "RevisionInput",
1493
1794
  # },
1494
1795
  # ],
1495
1796
  # glossary_terms: ["GlossaryTermId"],
@@ -1599,7 +1900,7 @@ module Aws::DataZone
1599
1900
  # content: "FormInputContentString",
1600
1901
  # form_name: "FormName", # required
1601
1902
  # type_identifier: "FormTypeIdentifier",
1602
- # type_revision: "Revision",
1903
+ # type_revision: "RevisionInput",
1603
1904
  # },
1604
1905
  # ],
1605
1906
  # glossary_terms: ["GlossaryTermId"],
@@ -1668,6 +1969,9 @@ module Aws::DataZone
1668
1969
  # Specifies the configuration of the data source. It can be set to
1669
1970
  # either `glueRunConfiguration` or `redshiftRunConfiguration`.
1670
1971
  #
1972
+ # @option params [String] :connection_identifier
1973
+ # The ID of the connection.
1974
+ #
1671
1975
  # @option params [String] :description
1672
1976
  # The description of the data source.
1673
1977
  #
@@ -1677,7 +1981,7 @@ module Aws::DataZone
1677
1981
  # @option params [String] :enable_setting
1678
1982
  # Specifies whether the data source is enabled.
1679
1983
  #
1680
- # @option params [required, String] :environment_identifier
1984
+ # @option params [String] :environment_identifier
1681
1985
  # The unique identifier of the Amazon DataZone environment to which the
1682
1986
  # data source publishes assets.
1683
1987
  #
@@ -1706,6 +2010,7 @@ module Aws::DataZone
1706
2010
  #
1707
2011
  # * {Types::CreateDataSourceOutput#asset_forms_output #asset_forms_output} => Array<Types::FormOutput>
1708
2012
  # * {Types::CreateDataSourceOutput#configuration #configuration} => Types::DataSourceConfigurationOutput
2013
+ # * {Types::CreateDataSourceOutput#connection_id #connection_id} => String
1709
2014
  # * {Types::CreateDataSourceOutput#created_at #created_at} => Time
1710
2015
  # * {Types::CreateDataSourceOutput#description #description} => String
1711
2016
  # * {Types::CreateDataSourceOutput#domain_id #domain_id} => String
@@ -1733,13 +2038,14 @@ module Aws::DataZone
1733
2038
  # content: "FormInputContentString",
1734
2039
  # form_name: "FormName", # required
1735
2040
  # type_identifier: "FormTypeIdentifier",
1736
- # type_revision: "Revision",
2041
+ # type_revision: "RevisionInput",
1737
2042
  # },
1738
2043
  # ],
1739
2044
  # client_token: "String",
1740
2045
  # configuration: {
1741
2046
  # glue_run_configuration: {
1742
2047
  # auto_import_data_quality_result: false,
2048
+ # catalog_name: "GlueRunConfigurationInputCatalogNameString",
1743
2049
  # data_access_role: "GlueRunConfigurationInputDataAccessRoleString",
1744
2050
  # relational_filter_configurations: [ # required
1745
2051
  # {
@@ -1756,10 +2062,10 @@ module Aws::DataZone
1756
2062
  # },
1757
2063
  # redshift_run_configuration: {
1758
2064
  # data_access_role: "RedshiftRunConfigurationInputDataAccessRoleString",
1759
- # redshift_credential_configuration: { # required
2065
+ # redshift_credential_configuration: {
1760
2066
  # secret_manager_arn: "RedshiftCredentialConfigurationSecretManagerArnString", # required
1761
2067
  # },
1762
- # redshift_storage: { # required
2068
+ # redshift_storage: {
1763
2069
  # redshift_cluster_source: {
1764
2070
  # cluster_name: "RedshiftClusterStorageClusterNameString", # required
1765
2071
  # },
@@ -1780,13 +2086,19 @@ module Aws::DataZone
1780
2086
  # },
1781
2087
  # ],
1782
2088
  # },
2089
+ # sage_maker_run_configuration: {
2090
+ # tracking_assets: { # required
2091
+ # "SageMakerAssetType" => ["SageMakerResourceArn"],
2092
+ # },
2093
+ # },
1783
2094
  # },
2095
+ # connection_identifier: "CreateDataSourceInputConnectionIdentifierString",
1784
2096
  # description: "Description",
1785
2097
  # domain_identifier: "DomainId", # required
1786
2098
  # enable_setting: "ENABLED", # accepts ENABLED, DISABLED
1787
- # environment_identifier: "String", # required
2099
+ # environment_identifier: "CreateDataSourceInputEnvironmentIdentifierString",
1788
2100
  # name: "Name", # required
1789
- # project_identifier: "String", # required
2101
+ # project_identifier: "CreateDataSourceInputProjectIdentifierString", # required
1790
2102
  # publish_on_import: false,
1791
2103
  # recommendation: {
1792
2104
  # enable_business_name_generation: false,
@@ -1807,6 +2119,7 @@ module Aws::DataZone
1807
2119
  # resp.asset_forms_output[0].type_revision #=> String
1808
2120
  # resp.configuration.glue_run_configuration.account_id #=> String
1809
2121
  # resp.configuration.glue_run_configuration.auto_import_data_quality_result #=> Boolean
2122
+ # resp.configuration.glue_run_configuration.catalog_name #=> String
1810
2123
  # resp.configuration.glue_run_configuration.data_access_role #=> String
1811
2124
  # resp.configuration.glue_run_configuration.region #=> String
1812
2125
  # resp.configuration.glue_run_configuration.relational_filter_configurations #=> Array
@@ -1827,6 +2140,12 @@ module Aws::DataZone
1827
2140
  # resp.configuration.redshift_run_configuration.relational_filter_configurations[0].filter_expressions[0].expression #=> String
1828
2141
  # resp.configuration.redshift_run_configuration.relational_filter_configurations[0].filter_expressions[0].type #=> String, one of "INCLUDE", "EXCLUDE"
1829
2142
  # resp.configuration.redshift_run_configuration.relational_filter_configurations[0].schema_name #=> String
2143
+ # resp.configuration.sage_maker_run_configuration.account_id #=> String
2144
+ # resp.configuration.sage_maker_run_configuration.region #=> String
2145
+ # resp.configuration.sage_maker_run_configuration.tracking_assets #=> Hash
2146
+ # resp.configuration.sage_maker_run_configuration.tracking_assets["SageMakerAssetType"] #=> Array
2147
+ # resp.configuration.sage_maker_run_configuration.tracking_assets["SageMakerAssetType"][0] #=> String
2148
+ # resp.connection_id #=> String
1830
2149
  # resp.created_at #=> Time
1831
2150
  # resp.description #=> String
1832
2151
  # resp.domain_id #=> String
@@ -1875,6 +2194,9 @@ module Aws::DataZone
1875
2194
  # domain is created. The domain execution role is created in the Amazon
1876
2195
  # Web Services account that houses the Amazon DataZone domain.
1877
2196
  #
2197
+ # @option params [String] :domain_version
2198
+ # The version of the domain that is created.
2199
+ #
1878
2200
  # @option params [String] :kms_key_identifier
1879
2201
  # The identifier of the Amazon Web Services Key Management Service (KMS)
1880
2202
  # key that is used to encrypt the Amazon DataZone domain, metadata, and
@@ -1883,6 +2205,9 @@ module Aws::DataZone
1883
2205
  # @option params [required, String] :name
1884
2206
  # The name of the Amazon DataZone domain.
1885
2207
  #
2208
+ # @option params [String] :service_role
2209
+ # The service role of the domain that is created.
2210
+ #
1886
2211
  # @option params [Types::SingleSignOn] :single_sign_on
1887
2212
  # The single-sign on configuration of the Amazon DataZone domain.
1888
2213
  #
@@ -1894,11 +2219,13 @@ module Aws::DataZone
1894
2219
  # * {Types::CreateDomainOutput#arn #arn} => String
1895
2220
  # * {Types::CreateDomainOutput#description #description} => String
1896
2221
  # * {Types::CreateDomainOutput#domain_execution_role #domain_execution_role} => String
2222
+ # * {Types::CreateDomainOutput#domain_version #domain_version} => String
1897
2223
  # * {Types::CreateDomainOutput#id #id} => String
1898
2224
  # * {Types::CreateDomainOutput#kms_key_identifier #kms_key_identifier} => String
1899
2225
  # * {Types::CreateDomainOutput#name #name} => String
1900
2226
  # * {Types::CreateDomainOutput#portal_url #portal_url} => String
1901
2227
  # * {Types::CreateDomainOutput#root_domain_unit_id #root_domain_unit_id} => String
2228
+ # * {Types::CreateDomainOutput#service_role #service_role} => String
1902
2229
  # * {Types::CreateDomainOutput#single_sign_on #single_sign_on} => Types::SingleSignOn
1903
2230
  # * {Types::CreateDomainOutput#status #status} => String
1904
2231
  # * {Types::CreateDomainOutput#tags #tags} => Hash<String,String>
@@ -1909,8 +2236,10 @@ module Aws::DataZone
1909
2236
  # client_token: "String",
1910
2237
  # description: "String",
1911
2238
  # domain_execution_role: "RoleArn", # required
2239
+ # domain_version: "V1", # accepts V1, V2
1912
2240
  # kms_key_identifier: "KmsKeyArn",
1913
2241
  # name: "String", # required
2242
+ # service_role: "RoleArn",
1914
2243
  # single_sign_on: {
1915
2244
  # type: "IAM_IDC", # accepts IAM_IDC, DISABLED
1916
2245
  # user_assignment: "AUTOMATIC", # accepts AUTOMATIC, MANUAL
@@ -1925,11 +2254,13 @@ module Aws::DataZone
1925
2254
  # resp.arn #=> String
1926
2255
  # resp.description #=> String
1927
2256
  # resp.domain_execution_role #=> String
2257
+ # resp.domain_version #=> String, one of "V1", "V2"
1928
2258
  # resp.id #=> String
1929
2259
  # resp.kms_key_identifier #=> String
1930
2260
  # resp.name #=> String
1931
2261
  # resp.portal_url #=> String
1932
2262
  # resp.root_domain_unit_id #=> String
2263
+ # resp.service_role #=> String
1933
2264
  # resp.single_sign_on.type #=> String, one of "IAM_IDC", "DISABLED"
1934
2265
  # resp.single_sign_on.user_assignment #=> String, one of "AUTOMATIC", "MANUAL"
1935
2266
  # resp.status #=> String, one of "CREATING", "AVAILABLE", "CREATION_FAILED", "DELETING", "DELETED", "DELETION_FAILED"
@@ -2014,6 +2345,9 @@ module Aws::DataZone
2014
2345
 
2015
2346
  # Create an Amazon DataZone environment.
2016
2347
  #
2348
+ # @option params [Integer] :deployment_order
2349
+ # The deployment order of the environment.
2350
+ #
2017
2351
  # @option params [String] :description
2018
2352
  # The description of the Amazon DataZone environment.
2019
2353
  #
@@ -2030,6 +2364,9 @@ module Aws::DataZone
2030
2364
  # @option params [String] :environment_blueprint_identifier
2031
2365
  # The ID of the blueprint with which the environment is being created.
2032
2366
  #
2367
+ # @option params [String] :environment_configuration_id
2368
+ # The configuration ID of the environment.
2369
+ #
2033
2370
  # @option params [required, String] :environment_profile_identifier
2034
2371
  # The identifier of the environment profile that is used to create this
2035
2372
  # Amazon DataZone environment.
@@ -2075,11 +2412,13 @@ module Aws::DataZone
2075
2412
  # @example Request syntax with placeholder values
2076
2413
  #
2077
2414
  # resp = client.create_environment({
2415
+ # deployment_order: 1,
2078
2416
  # description: "String",
2079
2417
  # domain_identifier: "DomainId", # required
2080
2418
  # environment_account_identifier: "String",
2081
2419
  # environment_account_region: "String",
2082
2420
  # environment_blueprint_identifier: "String",
2421
+ # environment_configuration_id: "String",
2083
2422
  # environment_profile_identifier: "EnvironmentProfileId", # required
2084
2423
  # glossary_terms: ["GlossaryTermId"],
2085
2424
  # name: "String", # required
@@ -2635,6 +2974,12 @@ module Aws::DataZone
2635
2974
  # @option params [required, String] :name
2636
2975
  # The name of the Amazon DataZone project.
2637
2976
  #
2977
+ # @option params [String] :project_profile_id
2978
+ # The ID of the project profile.
2979
+ #
2980
+ # @option params [Array<Types::EnvironmentConfigurationUserParameter>] :user_parameters
2981
+ # The user parameters of the project.
2982
+ #
2638
2983
  # @return [Types::CreateProjectOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2639
2984
  #
2640
2985
  # * {Types::CreateProjectOutput#created_at #created_at} => Time
@@ -2642,12 +2987,15 @@ module Aws::DataZone
2642
2987
  # * {Types::CreateProjectOutput#description #description} => String
2643
2988
  # * {Types::CreateProjectOutput#domain_id #domain_id} => String
2644
2989
  # * {Types::CreateProjectOutput#domain_unit_id #domain_unit_id} => String
2990
+ # * {Types::CreateProjectOutput#environment_deployment_details #environment_deployment_details} => Types::EnvironmentDeploymentDetails
2645
2991
  # * {Types::CreateProjectOutput#failure_reasons #failure_reasons} => Array&lt;Types::ProjectDeletionError&gt;
2646
2992
  # * {Types::CreateProjectOutput#glossary_terms #glossary_terms} => Array&lt;String&gt;
2647
2993
  # * {Types::CreateProjectOutput#id #id} => String
2648
2994
  # * {Types::CreateProjectOutput#last_updated_at #last_updated_at} => Time
2649
2995
  # * {Types::CreateProjectOutput#name #name} => String
2996
+ # * {Types::CreateProjectOutput#project_profile_id #project_profile_id} => String
2650
2997
  # * {Types::CreateProjectOutput#project_status #project_status} => String
2998
+ # * {Types::CreateProjectOutput#user_parameters #user_parameters} => Array&lt;Types::EnvironmentConfigurationUserParameter&gt;
2651
2999
  #
2652
3000
  # @example Request syntax with placeholder values
2653
3001
  #
@@ -2657,6 +3005,18 @@ module Aws::DataZone
2657
3005
  # domain_unit_id: "DomainUnitId",
2658
3006
  # glossary_terms: ["GlossaryTermId"],
2659
3007
  # name: "ProjectName", # required
3008
+ # project_profile_id: "ProjectProfileId",
3009
+ # user_parameters: [
3010
+ # {
3011
+ # environment_configuration_name: "EnvironmentConfigurationName",
3012
+ # environment_parameters: [
3013
+ # {
3014
+ # name: "String",
3015
+ # value: "String",
3016
+ # },
3017
+ # ],
3018
+ # },
3019
+ # ],
2660
3020
  # })
2661
3021
  #
2662
3022
  # @example Response structure
@@ -2666,6 +3026,11 @@ module Aws::DataZone
2666
3026
  # resp.description #=> String
2667
3027
  # resp.domain_id #=> String
2668
3028
  # resp.domain_unit_id #=> String
3029
+ # resp.environment_deployment_details.environment_failure_reasons #=> Hash
3030
+ # resp.environment_deployment_details.environment_failure_reasons["String"] #=> Array
3031
+ # resp.environment_deployment_details.environment_failure_reasons["String"][0].code #=> String
3032
+ # resp.environment_deployment_details.environment_failure_reasons["String"][0].message #=> String
3033
+ # resp.environment_deployment_details.overall_deployment_status #=> String, one of "PENDING_DEPLOYMENT", "IN_PROGRESS", "SUCCESSFUL", "FAILED_VALIDATION", "FAILED_DEPLOYMENT"
2669
3034
  # resp.failure_reasons #=> Array
2670
3035
  # resp.failure_reasons[0].code #=> String
2671
3036
  # resp.failure_reasons[0].message #=> String
@@ -2674,7 +3039,13 @@ module Aws::DataZone
2674
3039
  # resp.id #=> String
2675
3040
  # resp.last_updated_at #=> Time
2676
3041
  # resp.name #=> String
3042
+ # resp.project_profile_id #=> String
2677
3043
  # resp.project_status #=> String, one of "ACTIVE", "DELETING", "DELETE_FAILED"
3044
+ # resp.user_parameters #=> Array
3045
+ # resp.user_parameters[0].environment_configuration_name #=> String
3046
+ # resp.user_parameters[0].environment_parameters #=> Array
3047
+ # resp.user_parameters[0].environment_parameters[0].name #=> String
3048
+ # resp.user_parameters[0].environment_parameters[0].value #=> String
2678
3049
  #
2679
3050
  # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateProject AWS API Documentation
2680
3051
  #
@@ -2723,6 +3094,246 @@ module Aws::DataZone
2723
3094
  req.send_request(options)
2724
3095
  end
2725
3096
 
3097
+ # Creates a project profile.
3098
+ #
3099
+ # @option params [String] :description
3100
+ # A description of a project profile.
3101
+ #
3102
+ # @option params [required, String] :domain_identifier
3103
+ # A domain ID of the project profile.
3104
+ #
3105
+ # @option params [String] :domain_unit_identifier
3106
+ # A domain unit ID of the project profile.
3107
+ #
3108
+ # @option params [Array<Types::EnvironmentConfiguration>] :environment_configurations
3109
+ # Environment configurations of the project profile.
3110
+ #
3111
+ # @option params [required, String] :name
3112
+ # Project profile name.
3113
+ #
3114
+ # @option params [String] :status
3115
+ # Project profile status.
3116
+ #
3117
+ # @return [Types::CreateProjectProfileOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3118
+ #
3119
+ # * {Types::CreateProjectProfileOutput#created_at #created_at} => Time
3120
+ # * {Types::CreateProjectProfileOutput#created_by #created_by} => String
3121
+ # * {Types::CreateProjectProfileOutput#description #description} => String
3122
+ # * {Types::CreateProjectProfileOutput#domain_id #domain_id} => String
3123
+ # * {Types::CreateProjectProfileOutput#domain_unit_id #domain_unit_id} => String
3124
+ # * {Types::CreateProjectProfileOutput#environment_configurations #environment_configurations} => Array&lt;Types::EnvironmentConfiguration&gt;
3125
+ # * {Types::CreateProjectProfileOutput#id #id} => String
3126
+ # * {Types::CreateProjectProfileOutput#last_updated_at #last_updated_at} => Time
3127
+ # * {Types::CreateProjectProfileOutput#name #name} => String
3128
+ # * {Types::CreateProjectProfileOutput#status #status} => String
3129
+ #
3130
+ # @example Request syntax with placeholder values
3131
+ #
3132
+ # resp = client.create_project_profile({
3133
+ # description: "Description",
3134
+ # domain_identifier: "DomainId", # required
3135
+ # domain_unit_identifier: "DomainUnitId",
3136
+ # environment_configurations: [
3137
+ # {
3138
+ # aws_account: { # required
3139
+ # aws_account_id: "AwsAccountId",
3140
+ # aws_account_id_path: "ParameterStorePath",
3141
+ # },
3142
+ # aws_region: { # required
3143
+ # region_name: "RegionName",
3144
+ # region_name_path: "ParameterStorePath",
3145
+ # },
3146
+ # configuration_parameters: {
3147
+ # parameter_overrides: [
3148
+ # {
3149
+ # is_editable: false,
3150
+ # name: "EnvironmentConfigurationParameterName",
3151
+ # value: "String",
3152
+ # },
3153
+ # ],
3154
+ # resolved_parameters: [
3155
+ # {
3156
+ # is_editable: false,
3157
+ # name: "EnvironmentConfigurationParameterName",
3158
+ # value: "String",
3159
+ # },
3160
+ # ],
3161
+ # ssm_path: "ParameterStorePath",
3162
+ # },
3163
+ # deployment_mode: "ON_CREATE", # accepts ON_CREATE, ON_DEMAND
3164
+ # deployment_order: 1,
3165
+ # description: "Description",
3166
+ # environment_blueprint_id: "EnvironmentBlueprintId", # required
3167
+ # id: "EnvironmentConfigurationId",
3168
+ # name: "EnvironmentConfigurationName", # required
3169
+ # },
3170
+ # ],
3171
+ # name: "ProjectProfileName", # required
3172
+ # status: "ENABLED", # accepts ENABLED, DISABLED
3173
+ # })
3174
+ #
3175
+ # @example Response structure
3176
+ #
3177
+ # resp.created_at #=> Time
3178
+ # resp.created_by #=> String
3179
+ # resp.description #=> String
3180
+ # resp.domain_id #=> String
3181
+ # resp.domain_unit_id #=> String
3182
+ # resp.environment_configurations #=> Array
3183
+ # resp.environment_configurations[0].aws_account.aws_account_id #=> String
3184
+ # resp.environment_configurations[0].aws_account.aws_account_id_path #=> String
3185
+ # resp.environment_configurations[0].aws_region.region_name #=> String
3186
+ # resp.environment_configurations[0].aws_region.region_name_path #=> String
3187
+ # resp.environment_configurations[0].configuration_parameters.parameter_overrides #=> Array
3188
+ # resp.environment_configurations[0].configuration_parameters.parameter_overrides[0].is_editable #=> Boolean
3189
+ # resp.environment_configurations[0].configuration_parameters.parameter_overrides[0].name #=> String
3190
+ # resp.environment_configurations[0].configuration_parameters.parameter_overrides[0].value #=> String
3191
+ # resp.environment_configurations[0].configuration_parameters.resolved_parameters #=> Array
3192
+ # resp.environment_configurations[0].configuration_parameters.resolved_parameters[0].is_editable #=> Boolean
3193
+ # resp.environment_configurations[0].configuration_parameters.resolved_parameters[0].name #=> String
3194
+ # resp.environment_configurations[0].configuration_parameters.resolved_parameters[0].value #=> String
3195
+ # resp.environment_configurations[0].configuration_parameters.ssm_path #=> String
3196
+ # resp.environment_configurations[0].deployment_mode #=> String, one of "ON_CREATE", "ON_DEMAND"
3197
+ # resp.environment_configurations[0].deployment_order #=> Integer
3198
+ # resp.environment_configurations[0].description #=> String
3199
+ # resp.environment_configurations[0].environment_blueprint_id #=> String
3200
+ # resp.environment_configurations[0].id #=> String
3201
+ # resp.environment_configurations[0].name #=> String
3202
+ # resp.id #=> String
3203
+ # resp.last_updated_at #=> Time
3204
+ # resp.name #=> String
3205
+ # resp.status #=> String, one of "ENABLED", "DISABLED"
3206
+ #
3207
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateProjectProfile AWS API Documentation
3208
+ #
3209
+ # @overload create_project_profile(params = {})
3210
+ # @param [Hash] params ({})
3211
+ def create_project_profile(params = {}, options = {})
3212
+ req = build_request(:create_project_profile, params)
3213
+ req.send_request(options)
3214
+ end
3215
+
3216
+ # Creates a rule in Amazon DataZone. A rule is a formal agreement that
3217
+ # enforces specific requirements across user workflows (e.g., publishing
3218
+ # assets to the catalog, requesting subscriptions, creating projects)
3219
+ # within the Amazon DataZone data portal. These rules help maintain
3220
+ # consistency, ensure compliance, and uphold governance standards in
3221
+ # data management processes. For instance, a metadata enforcement rule
3222
+ # can specify the required information for creating a subscription
3223
+ # request or publishing a data asset to the catalog, ensuring alignment
3224
+ # with organizational standards.
3225
+ #
3226
+ # @option params [required, String] :action
3227
+ # The action of the rule.
3228
+ #
3229
+ # @option params [String] :client_token
3230
+ # A unique, case-sensitive identifier that is provided to ensure the
3231
+ # idempotency of the request.
3232
+ #
3233
+ # **A suitable default value is auto-generated.** You should normally
3234
+ # not need to pass this option.**
3235
+ #
3236
+ # @option params [String] :description
3237
+ # The description of the rule.
3238
+ #
3239
+ # @option params [required, Types::RuleDetail] :detail
3240
+ # The detail of the rule.
3241
+ #
3242
+ # @option params [required, String] :domain_identifier
3243
+ # The ID of the domain where the rule is created.
3244
+ #
3245
+ # @option params [required, String] :name
3246
+ # The name of the rule.
3247
+ #
3248
+ # @option params [required, Types::RuleScope] :scope
3249
+ # The scope of the rule.
3250
+ #
3251
+ # @option params [required, Types::RuleTarget] :target
3252
+ # The target of the rule.
3253
+ #
3254
+ # @return [Types::CreateRuleOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3255
+ #
3256
+ # * {Types::CreateRuleOutput#action #action} => String
3257
+ # * {Types::CreateRuleOutput#created_at #created_at} => Time
3258
+ # * {Types::CreateRuleOutput#created_by #created_by} => String
3259
+ # * {Types::CreateRuleOutput#description #description} => String
3260
+ # * {Types::CreateRuleOutput#detail #detail} => Types::RuleDetail
3261
+ # * {Types::CreateRuleOutput#identifier #identifier} => String
3262
+ # * {Types::CreateRuleOutput#name #name} => String
3263
+ # * {Types::CreateRuleOutput#rule_type #rule_type} => String
3264
+ # * {Types::CreateRuleOutput#scope #scope} => Types::RuleScope
3265
+ # * {Types::CreateRuleOutput#target #target} => Types::RuleTarget
3266
+ # * {Types::CreateRuleOutput#target_type #target_type} => String
3267
+ #
3268
+ # @example Request syntax with placeholder values
3269
+ #
3270
+ # resp = client.create_rule({
3271
+ # action: "CREATE_SUBSCRIPTION_REQUEST", # required, accepts CREATE_SUBSCRIPTION_REQUEST
3272
+ # client_token: "ClientToken",
3273
+ # description: "Description",
3274
+ # detail: { # required
3275
+ # metadata_form_enforcement_detail: {
3276
+ # required_metadata_forms: [
3277
+ # {
3278
+ # type_identifier: "FormTypeIdentifier", # required
3279
+ # type_revision: "Revision", # required
3280
+ # },
3281
+ # ],
3282
+ # },
3283
+ # },
3284
+ # domain_identifier: "DomainId", # required
3285
+ # name: "RuleName", # required
3286
+ # scope: { # required
3287
+ # asset_type: {
3288
+ # selection_mode: "ALL", # required, accepts ALL, SPECIFIC
3289
+ # specific_asset_types: ["AssetTypeIdentifier"],
3290
+ # },
3291
+ # data_product: false,
3292
+ # project: {
3293
+ # selection_mode: "ALL", # required, accepts ALL, SPECIFIC
3294
+ # specific_projects: ["ProjectId"],
3295
+ # },
3296
+ # },
3297
+ # target: { # required
3298
+ # domain_unit_target: {
3299
+ # domain_unit_id: "DomainUnitId", # required
3300
+ # include_child_domain_units: false,
3301
+ # },
3302
+ # },
3303
+ # })
3304
+ #
3305
+ # @example Response structure
3306
+ #
3307
+ # resp.action #=> String, one of "CREATE_SUBSCRIPTION_REQUEST"
3308
+ # resp.created_at #=> Time
3309
+ # resp.created_by #=> String
3310
+ # resp.description #=> String
3311
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms #=> Array
3312
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms[0].type_identifier #=> String
3313
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms[0].type_revision #=> String
3314
+ # resp.identifier #=> String
3315
+ # resp.name #=> String
3316
+ # resp.rule_type #=> String, one of "METADATA_FORM_ENFORCEMENT"
3317
+ # resp.scope.asset_type.selection_mode #=> String, one of "ALL", "SPECIFIC"
3318
+ # resp.scope.asset_type.specific_asset_types #=> Array
3319
+ # resp.scope.asset_type.specific_asset_types[0] #=> String
3320
+ # resp.scope.data_product #=> Boolean
3321
+ # resp.scope.project.selection_mode #=> String, one of "ALL", "SPECIFIC"
3322
+ # resp.scope.project.specific_projects #=> Array
3323
+ # resp.scope.project.specific_projects[0] #=> String
3324
+ # resp.target.domain_unit_target.domain_unit_id #=> String
3325
+ # resp.target.domain_unit_target.include_child_domain_units #=> Boolean
3326
+ # resp.target_type #=> String, one of "DOMAIN_UNIT"
3327
+ #
3328
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateRule AWS API Documentation
3329
+ #
3330
+ # @overload create_rule(params = {})
3331
+ # @param [Hash] params ({})
3332
+ def create_rule(params = {}, options = {})
3333
+ req = build_request(:create_rule, params)
3334
+ req.send_request(options)
3335
+ end
3336
+
2726
3337
  # Creates a subsscription grant in Amazon DataZone.
2727
3338
  #
2728
3339
  # @option params [Array<Types::AssetTargetNameMap>] :asset_target_names
@@ -2745,7 +3356,7 @@ module Aws::DataZone
2745
3356
  # @option params [required, Types::GrantedEntityInput] :granted_entity
2746
3357
  # The entity to which the subscription is to be granted.
2747
3358
  #
2748
- # @option params [required, String] :subscription_target_identifier
3359
+ # @option params [String] :subscription_target_identifier
2749
3360
  # The ID of the subscription target for which the subscription grant is
2750
3361
  # created.
2751
3362
  #
@@ -2781,7 +3392,7 @@ module Aws::DataZone
2781
3392
  # revision: "Revision", # required
2782
3393
  # },
2783
3394
  # },
2784
- # subscription_target_identifier: "SubscriptionTargetId", # required
3395
+ # subscription_target_identifier: "SubscriptionTargetId",
2785
3396
  # })
2786
3397
  #
2787
3398
  # @example Response structure
@@ -2833,6 +3444,9 @@ module Aws::DataZone
2833
3444
  # The ID of the Amazon DataZone domain in which the subscription request
2834
3445
  # is created.
2835
3446
  #
3447
+ # @option params [Array<Types::FormInput>] :metadata_forms
3448
+ # The metadata form included in the subscription request.
3449
+ #
2836
3450
  # @option params [required, String] :request_reason
2837
3451
  # The reason for the subscription request.
2838
3452
  #
@@ -2849,7 +3463,9 @@ module Aws::DataZone
2849
3463
  # * {Types::CreateSubscriptionRequestOutput#created_by #created_by} => String
2850
3464
  # * {Types::CreateSubscriptionRequestOutput#decision_comment #decision_comment} => String
2851
3465
  # * {Types::CreateSubscriptionRequestOutput#domain_id #domain_id} => String
3466
+ # * {Types::CreateSubscriptionRequestOutput#existing_subscription_id #existing_subscription_id} => String
2852
3467
  # * {Types::CreateSubscriptionRequestOutput#id #id} => String
3468
+ # * {Types::CreateSubscriptionRequestOutput#metadata_forms #metadata_forms} => Array&lt;Types::FormOutput&gt;
2853
3469
  # * {Types::CreateSubscriptionRequestOutput#request_reason #request_reason} => String
2854
3470
  # * {Types::CreateSubscriptionRequestOutput#reviewer_id #reviewer_id} => String
2855
3471
  # * {Types::CreateSubscriptionRequestOutput#status #status} => String
@@ -2863,6 +3479,14 @@ module Aws::DataZone
2863
3479
  # resp = client.create_subscription_request({
2864
3480
  # client_token: "String",
2865
3481
  # domain_identifier: "DomainId", # required
3482
+ # metadata_forms: [
3483
+ # {
3484
+ # content: "FormInputContentString",
3485
+ # form_name: "FormName", # required
3486
+ # type_identifier: "FormTypeIdentifier",
3487
+ # type_revision: "RevisionInput",
3488
+ # },
3489
+ # ],
2866
3490
  # request_reason: "RequestReason", # required
2867
3491
  # subscribed_listings: [ # required
2868
3492
  # {
@@ -2884,7 +3508,13 @@ module Aws::DataZone
2884
3508
  # resp.created_by #=> String
2885
3509
  # resp.decision_comment #=> String
2886
3510
  # resp.domain_id #=> String
3511
+ # resp.existing_subscription_id #=> String
2887
3512
  # resp.id #=> String
3513
+ # resp.metadata_forms #=> Array
3514
+ # resp.metadata_forms[0].content #=> String
3515
+ # resp.metadata_forms[0].form_name #=> String
3516
+ # resp.metadata_forms[0].type_name #=> String
3517
+ # resp.metadata_forms[0].type_revision #=> String
2888
3518
  # resp.request_reason #=> String
2889
3519
  # resp.reviewer_id #=> String
2890
3520
  # resp.status #=> String, one of "PENDING", "ACCEPTED", "REJECTED"
@@ -2996,7 +3626,7 @@ module Aws::DataZone
2996
3626
  # client_token: "String",
2997
3627
  # domain_identifier: "DomainId", # required
2998
3628
  # environment_identifier: "EnvironmentId", # required
2999
- # manage_access_role: "String", # required
3629
+ # manage_access_role: "IamRoleArn", # required
3000
3630
  # name: "SubscriptionTargetName", # required
3001
3631
  # provider: "String",
3002
3632
  # subscription_target_config: [ # required
@@ -3178,6 +3808,40 @@ module Aws::DataZone
3178
3808
  req.send_request(options)
3179
3809
  end
3180
3810
 
3811
+ # Deletes and connection. In Amazon DataZone, a connection enables you
3812
+ # to connect your resources (domains, projects, and environments) to
3813
+ # external resources and services.
3814
+ #
3815
+ # @option params [required, String] :domain_identifier
3816
+ # The ID of the domain where the connection is deleted.
3817
+ #
3818
+ # @option params [required, String] :identifier
3819
+ # The ID of the connection that is deleted.
3820
+ #
3821
+ # @return [Types::DeleteConnectionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3822
+ #
3823
+ # * {Types::DeleteConnectionOutput#status #status} => String
3824
+ #
3825
+ # @example Request syntax with placeholder values
3826
+ #
3827
+ # resp = client.delete_connection({
3828
+ # domain_identifier: "DomainId", # required
3829
+ # identifier: "ConnectionId", # required
3830
+ # })
3831
+ #
3832
+ # @example Response structure
3833
+ #
3834
+ # resp.status #=> String
3835
+ #
3836
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteConnection AWS API Documentation
3837
+ #
3838
+ # @overload delete_connection(params = {})
3839
+ # @param [Hash] params ({})
3840
+ def delete_connection(params = {}, options = {})
3841
+ req = build_request(:delete_connection, params)
3842
+ req.send_request(options)
3843
+ end
3844
+
3181
3845
  # Deletes a data product in Amazon DataZone.
3182
3846
  #
3183
3847
  # @option params [required, String] :domain_identifier
@@ -3229,6 +3893,7 @@ module Aws::DataZone
3229
3893
  #
3230
3894
  # * {Types::DeleteDataSourceOutput#asset_forms_output #asset_forms_output} => Array&lt;Types::FormOutput&gt;
3231
3895
  # * {Types::DeleteDataSourceOutput#configuration #configuration} => Types::DataSourceConfigurationOutput
3896
+ # * {Types::DeleteDataSourceOutput#connection_id #connection_id} => String
3232
3897
  # * {Types::DeleteDataSourceOutput#created_at #created_at} => Time
3233
3898
  # * {Types::DeleteDataSourceOutput#description #description} => String
3234
3899
  # * {Types::DeleteDataSourceOutput#domain_id #domain_id} => String
@@ -3267,6 +3932,7 @@ module Aws::DataZone
3267
3932
  # resp.asset_forms_output[0].type_revision #=> String
3268
3933
  # resp.configuration.glue_run_configuration.account_id #=> String
3269
3934
  # resp.configuration.glue_run_configuration.auto_import_data_quality_result #=> Boolean
3935
+ # resp.configuration.glue_run_configuration.catalog_name #=> String
3270
3936
  # resp.configuration.glue_run_configuration.data_access_role #=> String
3271
3937
  # resp.configuration.glue_run_configuration.region #=> String
3272
3938
  # resp.configuration.glue_run_configuration.relational_filter_configurations #=> Array
@@ -3287,6 +3953,12 @@ module Aws::DataZone
3287
3953
  # resp.configuration.redshift_run_configuration.relational_filter_configurations[0].filter_expressions[0].expression #=> String
3288
3954
  # resp.configuration.redshift_run_configuration.relational_filter_configurations[0].filter_expressions[0].type #=> String, one of "INCLUDE", "EXCLUDE"
3289
3955
  # resp.configuration.redshift_run_configuration.relational_filter_configurations[0].schema_name #=> String
3956
+ # resp.configuration.sage_maker_run_configuration.account_id #=> String
3957
+ # resp.configuration.sage_maker_run_configuration.region #=> String
3958
+ # resp.configuration.sage_maker_run_configuration.tracking_assets #=> Hash
3959
+ # resp.configuration.sage_maker_run_configuration.tracking_assets["SageMakerAssetType"] #=> Array
3960
+ # resp.configuration.sage_maker_run_configuration.tracking_assets["SageMakerAssetType"][0] #=> String
3961
+ # resp.connection_id #=> String
3290
3962
  # resp.created_at #=> Time
3291
3963
  # resp.description #=> String
3292
3964
  # resp.domain_id #=> String
@@ -3682,48 +4354,108 @@ module Aws::DataZone
3682
4354
  req.send_request(options)
3683
4355
  end
3684
4356
 
3685
- # Deletes and subscription grant in Amazon DataZone.
4357
+ # Deletes a project profile.
3686
4358
  #
3687
4359
  # @option params [required, String] :domain_identifier
3688
- # The ID of the Amazon DataZone domain where the subscription grant is
3689
- # deleted.
4360
+ # The ID of the domain where a project profile is deleted.
3690
4361
  #
3691
4362
  # @option params [required, String] :identifier
3692
- # The ID of the subscription grant that is deleted.
3693
- #
3694
- # @return [Types::DeleteSubscriptionGrantOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4363
+ # The ID of the project profile that is deleted.
3695
4364
  #
3696
- # * {Types::DeleteSubscriptionGrantOutput#assets #assets} => Array&lt;Types::SubscribedAsset&gt;
3697
- # * {Types::DeleteSubscriptionGrantOutput#created_at #created_at} => Time
3698
- # * {Types::DeleteSubscriptionGrantOutput#created_by #created_by} => String
3699
- # * {Types::DeleteSubscriptionGrantOutput#domain_id #domain_id} => String
3700
- # * {Types::DeleteSubscriptionGrantOutput#granted_entity #granted_entity} => Types::GrantedEntity
3701
- # * {Types::DeleteSubscriptionGrantOutput#id #id} => String
3702
- # * {Types::DeleteSubscriptionGrantOutput#status #status} => String
3703
- # * {Types::DeleteSubscriptionGrantOutput#subscription_id #subscription_id} => String
3704
- # * {Types::DeleteSubscriptionGrantOutput#subscription_target_id #subscription_target_id} => String
3705
- # * {Types::DeleteSubscriptionGrantOutput#updated_at #updated_at} => Time
3706
- # * {Types::DeleteSubscriptionGrantOutput#updated_by #updated_by} => String
4365
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3707
4366
  #
3708
4367
  # @example Request syntax with placeholder values
3709
4368
  #
3710
- # resp = client.delete_subscription_grant({
4369
+ # resp = client.delete_project_profile({
3711
4370
  # domain_identifier: "DomainId", # required
3712
- # identifier: "SubscriptionGrantId", # required
4371
+ # identifier: "ProjectProfileId", # required
3713
4372
  # })
3714
4373
  #
3715
- # @example Response structure
4374
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteProjectProfile AWS API Documentation
3716
4375
  #
3717
- # resp.assets #=> Array
3718
- # resp.assets[0].asset_id #=> String
3719
- # resp.assets[0].asset_revision #=> String
3720
- # resp.assets[0].asset_scope.asset_id #=> String
3721
- # resp.assets[0].asset_scope.error_message #=> String
3722
- # resp.assets[0].asset_scope.filter_ids #=> Array
3723
- # resp.assets[0].asset_scope.filter_ids[0] #=> String
3724
- # resp.assets[0].asset_scope.status #=> String
3725
- # resp.assets[0].failure_cause.message #=> String
3726
- # resp.assets[0].failure_timestamp #=> Time
4376
+ # @overload delete_project_profile(params = {})
4377
+ # @param [Hash] params ({})
4378
+ def delete_project_profile(params = {}, options = {})
4379
+ req = build_request(:delete_project_profile, params)
4380
+ req.send_request(options)
4381
+ end
4382
+
4383
+ # Deletes a rule in Amazon DataZone. A rule is a formal agreement that
4384
+ # enforces specific requirements across user workflows (e.g., publishing
4385
+ # assets to the catalog, requesting subscriptions, creating projects)
4386
+ # within the Amazon DataZone data portal. These rules help maintain
4387
+ # consistency, ensure compliance, and uphold governance standards in
4388
+ # data management processes. For instance, a metadata enforcement rule
4389
+ # can specify the required information for creating a subscription
4390
+ # request or publishing a data asset to the catalog, ensuring alignment
4391
+ # with organizational standards.
4392
+ #
4393
+ # @option params [required, String] :domain_identifier
4394
+ # The ID of the domain that where the rule is to be deleted.
4395
+ #
4396
+ # @option params [required, String] :identifier
4397
+ # The ID of the rule that is to be deleted.
4398
+ #
4399
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4400
+ #
4401
+ # @example Request syntax with placeholder values
4402
+ #
4403
+ # resp = client.delete_rule({
4404
+ # domain_identifier: "DomainId", # required
4405
+ # identifier: "RuleId", # required
4406
+ # })
4407
+ #
4408
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteRule AWS API Documentation
4409
+ #
4410
+ # @overload delete_rule(params = {})
4411
+ # @param [Hash] params ({})
4412
+ def delete_rule(params = {}, options = {})
4413
+ req = build_request(:delete_rule, params)
4414
+ req.send_request(options)
4415
+ end
4416
+
4417
+ # Deletes and subscription grant in Amazon DataZone.
4418
+ #
4419
+ # @option params [required, String] :domain_identifier
4420
+ # The ID of the Amazon DataZone domain where the subscription grant is
4421
+ # deleted.
4422
+ #
4423
+ # @option params [required, String] :identifier
4424
+ # The ID of the subscription grant that is deleted.
4425
+ #
4426
+ # @return [Types::DeleteSubscriptionGrantOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4427
+ #
4428
+ # * {Types::DeleteSubscriptionGrantOutput#assets #assets} => Array&lt;Types::SubscribedAsset&gt;
4429
+ # * {Types::DeleteSubscriptionGrantOutput#created_at #created_at} => Time
4430
+ # * {Types::DeleteSubscriptionGrantOutput#created_by #created_by} => String
4431
+ # * {Types::DeleteSubscriptionGrantOutput#domain_id #domain_id} => String
4432
+ # * {Types::DeleteSubscriptionGrantOutput#granted_entity #granted_entity} => Types::GrantedEntity
4433
+ # * {Types::DeleteSubscriptionGrantOutput#id #id} => String
4434
+ # * {Types::DeleteSubscriptionGrantOutput#status #status} => String
4435
+ # * {Types::DeleteSubscriptionGrantOutput#subscription_id #subscription_id} => String
4436
+ # * {Types::DeleteSubscriptionGrantOutput#subscription_target_id #subscription_target_id} => String
4437
+ # * {Types::DeleteSubscriptionGrantOutput#updated_at #updated_at} => Time
4438
+ # * {Types::DeleteSubscriptionGrantOutput#updated_by #updated_by} => String
4439
+ #
4440
+ # @example Request syntax with placeholder values
4441
+ #
4442
+ # resp = client.delete_subscription_grant({
4443
+ # domain_identifier: "DomainId", # required
4444
+ # identifier: "SubscriptionGrantId", # required
4445
+ # })
4446
+ #
4447
+ # @example Response structure
4448
+ #
4449
+ # resp.assets #=> Array
4450
+ # resp.assets[0].asset_id #=> String
4451
+ # resp.assets[0].asset_revision #=> String
4452
+ # resp.assets[0].asset_scope.asset_id #=> String
4453
+ # resp.assets[0].asset_scope.error_message #=> String
4454
+ # resp.assets[0].asset_scope.filter_ids #=> Array
4455
+ # resp.assets[0].asset_scope.filter_ids[0] #=> String
4456
+ # resp.assets[0].asset_scope.status #=> String
4457
+ # resp.assets[0].failure_cause.message #=> String
4458
+ # resp.assets[0].failure_timestamp #=> Time
3727
4459
  # resp.assets[0].granted_timestamp #=> Time
3728
4460
  # resp.assets[0].status #=> String, one of "GRANT_PENDING", "REVOKE_PENDING", "GRANT_IN_PROGRESS", "REVOKE_IN_PROGRESS", "GRANTED", "REVOKED", "GRANT_FAILED", "REVOKE_FAILED"
3729
4461
  # resp.assets[0].target_name #=> String
@@ -4115,6 +4847,161 @@ module Aws::DataZone
4115
4847
  req.send_request(options)
4116
4848
  end
4117
4849
 
4850
+ # Gets a connection. In Amazon DataZone, a connection enables you to
4851
+ # connect your resources (domains, projects, and environments) to
4852
+ # external resources and services.
4853
+ #
4854
+ # @option params [required, String] :domain_identifier
4855
+ # The ID of the domain where we get the connection.
4856
+ #
4857
+ # @option params [required, String] :identifier
4858
+ # The connection ID.
4859
+ #
4860
+ # @option params [Boolean] :with_secret
4861
+ # Specifies whether a connection has a secret.
4862
+ #
4863
+ # @return [Types::GetConnectionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4864
+ #
4865
+ # * {Types::GetConnectionOutput#connection_credentials #connection_credentials} => Types::ConnectionCredentials
4866
+ # * {Types::GetConnectionOutput#connection_id #connection_id} => String
4867
+ # * {Types::GetConnectionOutput#description #description} => String
4868
+ # * {Types::GetConnectionOutput#domain_id #domain_id} => String
4869
+ # * {Types::GetConnectionOutput#domain_unit_id #domain_unit_id} => String
4870
+ # * {Types::GetConnectionOutput#environment_id #environment_id} => String
4871
+ # * {Types::GetConnectionOutput#environment_user_role #environment_user_role} => String
4872
+ # * {Types::GetConnectionOutput#name #name} => String
4873
+ # * {Types::GetConnectionOutput#physical_endpoints #physical_endpoints} => Array&lt;Types::PhysicalEndpoint&gt;
4874
+ # * {Types::GetConnectionOutput#project_id #project_id} => String
4875
+ # * {Types::GetConnectionOutput#props #props} => Types::ConnectionPropertiesOutput
4876
+ # * {Types::GetConnectionOutput#type #type} => String
4877
+ #
4878
+ # @example Request syntax with placeholder values
4879
+ #
4880
+ # resp = client.get_connection({
4881
+ # domain_identifier: "DomainId", # required
4882
+ # identifier: "ConnectionId", # required
4883
+ # with_secret: false,
4884
+ # })
4885
+ #
4886
+ # @example Response structure
4887
+ #
4888
+ # resp.connection_credentials.access_key_id #=> String
4889
+ # resp.connection_credentials.expiration #=> Time
4890
+ # resp.connection_credentials.secret_access_key #=> String
4891
+ # resp.connection_credentials.session_token #=> String
4892
+ # resp.connection_id #=> String
4893
+ # resp.description #=> String
4894
+ # resp.domain_id #=> String
4895
+ # resp.domain_unit_id #=> String
4896
+ # resp.environment_id #=> String
4897
+ # resp.environment_user_role #=> String
4898
+ # resp.name #=> String
4899
+ # resp.physical_endpoints #=> Array
4900
+ # resp.physical_endpoints[0].aws_location.access_role #=> String
4901
+ # resp.physical_endpoints[0].aws_location.aws_account_id #=> String
4902
+ # resp.physical_endpoints[0].aws_location.aws_region #=> String
4903
+ # resp.physical_endpoints[0].aws_location.iam_connection_id #=> String
4904
+ # resp.physical_endpoints[0].glue_connection.athena_properties #=> Hash
4905
+ # resp.physical_endpoints[0].glue_connection.athena_properties["PropertyMapKeyString"] #=> String
4906
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.authentication_type #=> String, one of "BASIC", "OAUTH2", "CUSTOM"
4907
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.authorization_code_properties.authorization_code #=> String
4908
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.authorization_code_properties.redirect_uri #=> String
4909
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_client_application.a_ws_managed_client_application_reference #=> String
4910
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_client_application.user_managed_client_application_client_id #=> String
4911
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_credentials.access_token #=> String
4912
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_credentials.jwt_token #=> String
4913
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_credentials.refresh_token #=> String
4914
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_credentials.user_managed_client_application_client_secret #=> String
4915
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_grant_type #=> String, one of "AUTHORIZATION_CODE", "CLIENT_CREDENTIALS", "JWT_BEARER"
4916
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.token_url #=> String
4917
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.token_url_parameters_map #=> Hash
4918
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.token_url_parameters_map["TokenUrlParametersMapKeyString"] #=> String
4919
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.secret_arn #=> String
4920
+ # resp.physical_endpoints[0].glue_connection.compatible_compute_environments #=> Array
4921
+ # resp.physical_endpoints[0].glue_connection.compatible_compute_environments[0] #=> String, one of "SPARK", "ATHENA", "PYTHON"
4922
+ # resp.physical_endpoints[0].glue_connection.connection_properties #=> Hash
4923
+ # resp.physical_endpoints[0].glue_connection.connection_properties["String"] #=> String
4924
+ # resp.physical_endpoints[0].glue_connection.connection_schema_version #=> Integer
4925
+ # resp.physical_endpoints[0].glue_connection.connection_type #=> String, one of "ATHENA", "BIGQUERY", "DATABRICKS", "DOCUMENTDB", "DYNAMODB", "HYPERPOD", "IAM", "MYSQL", "OPENSEARCH", "ORACLE", "POSTGRESQL", "REDSHIFT", "SAPHANA", "SNOWFLAKE", "SPARK", "SQLSERVER", "TERADATA", "VERTICA", "WORKFLOWS_MWAA"
4926
+ # resp.physical_endpoints[0].glue_connection.creation_time #=> Time
4927
+ # resp.physical_endpoints[0].glue_connection.description #=> String
4928
+ # resp.physical_endpoints[0].glue_connection.last_connection_validation_time #=> Time
4929
+ # resp.physical_endpoints[0].glue_connection.last_updated_by #=> String
4930
+ # resp.physical_endpoints[0].glue_connection.last_updated_time #=> Time
4931
+ # resp.physical_endpoints[0].glue_connection.match_criteria #=> Array
4932
+ # resp.physical_endpoints[0].glue_connection.match_criteria[0] #=> String
4933
+ # resp.physical_endpoints[0].glue_connection.name #=> String
4934
+ # resp.physical_endpoints[0].glue_connection.physical_connection_requirements.availability_zone #=> String
4935
+ # resp.physical_endpoints[0].glue_connection.physical_connection_requirements.security_group_id_list #=> Array
4936
+ # resp.physical_endpoints[0].glue_connection.physical_connection_requirements.security_group_id_list[0] #=> String
4937
+ # resp.physical_endpoints[0].glue_connection.physical_connection_requirements.subnet_id #=> String
4938
+ # resp.physical_endpoints[0].glue_connection.physical_connection_requirements.subnet_id_list #=> Array
4939
+ # resp.physical_endpoints[0].glue_connection.physical_connection_requirements.subnet_id_list[0] #=> String
4940
+ # resp.physical_endpoints[0].glue_connection.python_properties #=> Hash
4941
+ # resp.physical_endpoints[0].glue_connection.python_properties["PropertyMapKeyString"] #=> String
4942
+ # resp.physical_endpoints[0].glue_connection.spark_properties #=> Hash
4943
+ # resp.physical_endpoints[0].glue_connection.spark_properties["PropertyMapKeyString"] #=> String
4944
+ # resp.physical_endpoints[0].glue_connection.status #=> String, one of "CREATING", "CREATE_FAILED", "DELETING", "DELETE_FAILED", "READY", "UPDATING", "UPDATE_FAILED", "DELETED"
4945
+ # resp.physical_endpoints[0].glue_connection.status_reason #=> String
4946
+ # resp.physical_endpoints[0].glue_connection_name #=> String
4947
+ # resp.physical_endpoints[0].host #=> String
4948
+ # resp.physical_endpoints[0].port #=> Integer
4949
+ # resp.physical_endpoints[0].protocol #=> String, one of "ATHENA", "GLUE_INTERACTIVE_SESSION", "HTTPS", "JDBC", "LIVY", "ODBC", "PRISM"
4950
+ # resp.physical_endpoints[0].stage #=> String
4951
+ # resp.project_id #=> String
4952
+ # resp.props.athena_properties.workgroup_name #=> String
4953
+ # resp.props.glue_properties.error_message #=> String
4954
+ # resp.props.glue_properties.status #=> String, one of "CREATING", "CREATE_FAILED", "DELETING", "DELETE_FAILED", "READY", "UPDATING", "UPDATE_FAILED", "DELETED"
4955
+ # resp.props.hyper_pod_properties.cluster_arn #=> String
4956
+ # resp.props.hyper_pod_properties.cluster_name #=> String
4957
+ # resp.props.hyper_pod_properties.orchestrator #=> String, one of "EKS", "SLURM"
4958
+ # resp.props.iam_properties.environment_id #=> String
4959
+ # resp.props.iam_properties.glue_lineage_sync_enabled #=> Boolean
4960
+ # resp.props.redshift_properties.credentials.secret_arn #=> String
4961
+ # resp.props.redshift_properties.credentials.username_password.password #=> String
4962
+ # resp.props.redshift_properties.credentials.username_password.username #=> String
4963
+ # resp.props.redshift_properties.database_name #=> String
4964
+ # resp.props.redshift_properties.is_provisioned_secret #=> Boolean
4965
+ # resp.props.redshift_properties.jdbc_iam_url #=> String
4966
+ # resp.props.redshift_properties.jdbc_url #=> String
4967
+ # resp.props.redshift_properties.lineage_sync.enabled #=> Boolean
4968
+ # resp.props.redshift_properties.lineage_sync.lineage_job_id #=> String
4969
+ # resp.props.redshift_properties.lineage_sync.schedule.schedule #=> String
4970
+ # resp.props.redshift_properties.redshift_temp_dir #=> String
4971
+ # resp.props.redshift_properties.status #=> String, one of "CREATING", "CREATE_FAILED", "DELETING", "DELETE_FAILED", "READY", "UPDATING", "UPDATE_FAILED", "DELETED"
4972
+ # resp.props.redshift_properties.storage.cluster_name #=> String
4973
+ # resp.props.redshift_properties.storage.workgroup_name #=> String
4974
+ # resp.props.spark_emr_properties.compute_arn #=> String
4975
+ # resp.props.spark_emr_properties.credentials.password #=> String
4976
+ # resp.props.spark_emr_properties.credentials.username #=> String
4977
+ # resp.props.spark_emr_properties.credentials_expiration #=> Time
4978
+ # resp.props.spark_emr_properties.governance_type #=> String, one of "AWS_MANAGED", "USER_MANAGED"
4979
+ # resp.props.spark_emr_properties.instance_profile_arn #=> String
4980
+ # resp.props.spark_emr_properties.java_virtual_env #=> String
4981
+ # resp.props.spark_emr_properties.livy_endpoint #=> String
4982
+ # resp.props.spark_emr_properties.log_uri #=> String
4983
+ # resp.props.spark_emr_properties.python_virtual_env #=> String
4984
+ # resp.props.spark_emr_properties.runtime_role #=> String
4985
+ # resp.props.spark_emr_properties.trusted_certificates_s3_uri #=> String
4986
+ # resp.props.spark_glue_properties.additional_args.connection #=> String
4987
+ # resp.props.spark_glue_properties.glue_connection_name #=> String
4988
+ # resp.props.spark_glue_properties.glue_version #=> String
4989
+ # resp.props.spark_glue_properties.idle_timeout #=> Integer
4990
+ # resp.props.spark_glue_properties.java_virtual_env #=> String
4991
+ # resp.props.spark_glue_properties.number_of_workers #=> Integer
4992
+ # resp.props.spark_glue_properties.python_virtual_env #=> String
4993
+ # resp.props.spark_glue_properties.worker_type #=> String
4994
+ # resp.type #=> String, one of "ATHENA", "BIGQUERY", "DATABRICKS", "DOCUMENTDB", "DYNAMODB", "HYPERPOD", "IAM", "MYSQL", "OPENSEARCH", "ORACLE", "POSTGRESQL", "REDSHIFT", "SAPHANA", "SNOWFLAKE", "SPARK", "SQLSERVER", "TERADATA", "VERTICA", "WORKFLOWS_MWAA"
4995
+ #
4996
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetConnection AWS API Documentation
4997
+ #
4998
+ # @overload get_connection(params = {})
4999
+ # @param [Hash] params ({})
5000
+ def get_connection(params = {}, options = {})
5001
+ req = build_request(:get_connection, params)
5002
+ req.send_request(options)
5003
+ end
5004
+
4118
5005
  # Gets the data product.
4119
5006
  #
4120
5007
  # @option params [required, String] :domain_identifier
@@ -4199,6 +5086,7 @@ module Aws::DataZone
4199
5086
  #
4200
5087
  # * {Types::GetDataSourceOutput#asset_forms_output #asset_forms_output} => Array&lt;Types::FormOutput&gt;
4201
5088
  # * {Types::GetDataSourceOutput#configuration #configuration} => Types::DataSourceConfigurationOutput
5089
+ # * {Types::GetDataSourceOutput#connection_id #connection_id} => String
4202
5090
  # * {Types::GetDataSourceOutput#created_at #created_at} => Time
4203
5091
  # * {Types::GetDataSourceOutput#description #description} => String
4204
5092
  # * {Types::GetDataSourceOutput#domain_id #domain_id} => String
@@ -4236,6 +5124,7 @@ module Aws::DataZone
4236
5124
  # resp.asset_forms_output[0].type_revision #=> String
4237
5125
  # resp.configuration.glue_run_configuration.account_id #=> String
4238
5126
  # resp.configuration.glue_run_configuration.auto_import_data_quality_result #=> Boolean
5127
+ # resp.configuration.glue_run_configuration.catalog_name #=> String
4239
5128
  # resp.configuration.glue_run_configuration.data_access_role #=> String
4240
5129
  # resp.configuration.glue_run_configuration.region #=> String
4241
5130
  # resp.configuration.glue_run_configuration.relational_filter_configurations #=> Array
@@ -4256,6 +5145,12 @@ module Aws::DataZone
4256
5145
  # resp.configuration.redshift_run_configuration.relational_filter_configurations[0].filter_expressions[0].expression #=> String
4257
5146
  # resp.configuration.redshift_run_configuration.relational_filter_configurations[0].filter_expressions[0].type #=> String, one of "INCLUDE", "EXCLUDE"
4258
5147
  # resp.configuration.redshift_run_configuration.relational_filter_configurations[0].schema_name #=> String
5148
+ # resp.configuration.sage_maker_run_configuration.account_id #=> String
5149
+ # resp.configuration.sage_maker_run_configuration.region #=> String
5150
+ # resp.configuration.sage_maker_run_configuration.tracking_assets #=> Hash
5151
+ # resp.configuration.sage_maker_run_configuration.tracking_assets["SageMakerAssetType"] #=> Array
5152
+ # resp.configuration.sage_maker_run_configuration.tracking_assets["SageMakerAssetType"][0] #=> String
5153
+ # resp.connection_id #=> String
4259
5154
  # resp.created_at #=> Time
4260
5155
  # resp.description #=> String
4261
5156
  # resp.domain_id #=> String
@@ -4314,6 +5209,7 @@ module Aws::DataZone
4314
5209
  # * {Types::GetDataSourceRunOutput#domain_id #domain_id} => String
4315
5210
  # * {Types::GetDataSourceRunOutput#error_message #error_message} => Types::DataSourceErrorMessage
4316
5211
  # * {Types::GetDataSourceRunOutput#id #id} => String
5212
+ # * {Types::GetDataSourceRunOutput#lineage_summary #lineage_summary} => Types::DataSourceRunLineageSummary
4317
5213
  # * {Types::GetDataSourceRunOutput#project_id #project_id} => String
4318
5214
  # * {Types::GetDataSourceRunOutput#run_statistics_for_assets #run_statistics_for_assets} => Types::RunStatisticsForAssets
4319
5215
  # * {Types::GetDataSourceRunOutput#started_at #started_at} => Time
@@ -4338,6 +5234,7 @@ module Aws::DataZone
4338
5234
  # resp.error_message.error_detail #=> String
4339
5235
  # resp.error_message.error_type #=> String, one of "ACCESS_DENIED_EXCEPTION", "CONFLICT_EXCEPTION", "INTERNAL_SERVER_EXCEPTION", "RESOURCE_NOT_FOUND_EXCEPTION", "SERVICE_QUOTA_EXCEEDED_EXCEPTION", "THROTTLING_EXCEPTION", "VALIDATION_EXCEPTION"
4340
5236
  # resp.id #=> String
5237
+ # resp.lineage_summary.import_status #=> String, one of "IN_PROGRESS", "SUCCESS", "FAILED", "PARTIALLY_SUCCEEDED"
4341
5238
  # resp.project_id #=> String
4342
5239
  # resp.run_statistics_for_assets.added #=> Integer
4343
5240
  # resp.run_statistics_for_assets.failed #=> Integer
@@ -4370,12 +5267,14 @@ module Aws::DataZone
4370
5267
  # * {Types::GetDomainOutput#created_at #created_at} => Time
4371
5268
  # * {Types::GetDomainOutput#description #description} => String
4372
5269
  # * {Types::GetDomainOutput#domain_execution_role #domain_execution_role} => String
5270
+ # * {Types::GetDomainOutput#domain_version #domain_version} => String
4373
5271
  # * {Types::GetDomainOutput#id #id} => String
4374
5272
  # * {Types::GetDomainOutput#kms_key_identifier #kms_key_identifier} => String
4375
5273
  # * {Types::GetDomainOutput#last_updated_at #last_updated_at} => Time
4376
5274
  # * {Types::GetDomainOutput#name #name} => String
4377
5275
  # * {Types::GetDomainOutput#portal_url #portal_url} => String
4378
5276
  # * {Types::GetDomainOutput#root_domain_unit_id #root_domain_unit_id} => String
5277
+ # * {Types::GetDomainOutput#service_role #service_role} => String
4379
5278
  # * {Types::GetDomainOutput#single_sign_on #single_sign_on} => Types::SingleSignOn
4380
5279
  # * {Types::GetDomainOutput#status #status} => String
4381
5280
  # * {Types::GetDomainOutput#tags #tags} => Hash&lt;String,String&gt;
@@ -4392,12 +5291,14 @@ module Aws::DataZone
4392
5291
  # resp.created_at #=> Time
4393
5292
  # resp.description #=> String
4394
5293
  # resp.domain_execution_role #=> String
5294
+ # resp.domain_version #=> String, one of "V1", "V2"
4395
5295
  # resp.id #=> String
4396
5296
  # resp.kms_key_identifier #=> String
4397
5297
  # resp.last_updated_at #=> Time
4398
5298
  # resp.name #=> String
4399
5299
  # resp.portal_url #=> String
4400
5300
  # resp.root_domain_unit_id #=> String
5301
+ # resp.service_role #=> String
4401
5302
  # resp.single_sign_on.type #=> String, one of "IAM_IDC", "DISABLED"
4402
5303
  # resp.single_sign_on.user_assignment #=> String, one of "AUTOMATIC", "MANUAL"
4403
5304
  # resp.status #=> String, one of "CREATING", "AVAILABLE", "CREATION_FAILED", "DELETING", "DELETED", "DELETION_FAILED"
@@ -4680,6 +5581,7 @@ module Aws::DataZone
4680
5581
  # * {Types::GetEnvironmentBlueprintConfigurationOutput#domain_id #domain_id} => String
4681
5582
  # * {Types::GetEnvironmentBlueprintConfigurationOutput#enabled_regions #enabled_regions} => Array&lt;String&gt;
4682
5583
  # * {Types::GetEnvironmentBlueprintConfigurationOutput#environment_blueprint_id #environment_blueprint_id} => String
5584
+ # * {Types::GetEnvironmentBlueprintConfigurationOutput#environment_role_permission_boundary #environment_role_permission_boundary} => String
4683
5585
  # * {Types::GetEnvironmentBlueprintConfigurationOutput#manage_access_role_arn #manage_access_role_arn} => String
4684
5586
  # * {Types::GetEnvironmentBlueprintConfigurationOutput#provisioning_configurations #provisioning_configurations} => Array&lt;Types::ProvisioningConfiguration&gt;
4685
5587
  # * {Types::GetEnvironmentBlueprintConfigurationOutput#provisioning_role_arn #provisioning_role_arn} => String
@@ -4700,6 +5602,7 @@ module Aws::DataZone
4700
5602
  # resp.enabled_regions #=> Array
4701
5603
  # resp.enabled_regions[0] #=> String
4702
5604
  # resp.environment_blueprint_id #=> String
5605
+ # resp.environment_role_permission_boundary #=> String
4703
5606
  # resp.manage_access_role_arn #=> String
4704
5607
  # resp.provisioning_configurations #=> Array
4705
5608
  # resp.provisioning_configurations[0].lake_formation_configuration.location_registration_exclude_s3_locations #=> Array
@@ -5060,6 +5963,109 @@ module Aws::DataZone
5060
5963
  req.send_request(options)
5061
5964
  end
5062
5965
 
5966
+ # The details of the job run.
5967
+ #
5968
+ # @option params [required, String] :domain_identifier
5969
+ # The ID of the domain.
5970
+ #
5971
+ # @option params [required, String] :identifier
5972
+ # The ID of the job run.
5973
+ #
5974
+ # @return [Types::GetJobRunOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5975
+ #
5976
+ # * {Types::GetJobRunOutput#created_at #created_at} => Time
5977
+ # * {Types::GetJobRunOutput#created_by #created_by} => String
5978
+ # * {Types::GetJobRunOutput#details #details} => Types::JobRunDetails
5979
+ # * {Types::GetJobRunOutput#domain_id #domain_id} => String
5980
+ # * {Types::GetJobRunOutput#end_time #end_time} => Time
5981
+ # * {Types::GetJobRunOutput#error #error} => Types::JobRunError
5982
+ # * {Types::GetJobRunOutput#id #id} => String
5983
+ # * {Types::GetJobRunOutput#job_id #job_id} => String
5984
+ # * {Types::GetJobRunOutput#job_type #job_type} => String
5985
+ # * {Types::GetJobRunOutput#run_mode #run_mode} => String
5986
+ # * {Types::GetJobRunOutput#start_time #start_time} => Time
5987
+ # * {Types::GetJobRunOutput#status #status} => String
5988
+ #
5989
+ # @example Request syntax with placeholder values
5990
+ #
5991
+ # resp = client.get_job_run({
5992
+ # domain_identifier: "DomainId", # required
5993
+ # identifier: "RunIdentifier", # required
5994
+ # })
5995
+ #
5996
+ # @example Response structure
5997
+ #
5998
+ # resp.created_at #=> Time
5999
+ # resp.created_by #=> String
6000
+ # resp.details.lineage_run_details.sql_query_run_details.error_messages #=> Array
6001
+ # resp.details.lineage_run_details.sql_query_run_details.error_messages[0] #=> String
6002
+ # resp.details.lineage_run_details.sql_query_run_details.num_queries_failed #=> Integer
6003
+ # resp.details.lineage_run_details.sql_query_run_details.query_end_time #=> Time
6004
+ # resp.details.lineage_run_details.sql_query_run_details.query_start_time #=> Time
6005
+ # resp.details.lineage_run_details.sql_query_run_details.total_queries_processed #=> Integer
6006
+ # resp.domain_id #=> String
6007
+ # resp.end_time #=> Time
6008
+ # resp.error.message #=> String
6009
+ # resp.id #=> String
6010
+ # resp.job_id #=> String
6011
+ # resp.job_type #=> String, one of "LINEAGE"
6012
+ # resp.run_mode #=> String, one of "SCHEDULED", "ON_DEMAND"
6013
+ # resp.start_time #=> Time
6014
+ # resp.status #=> String, one of "SCHEDULED", "IN_PROGRESS", "SUCCESS", "PARTIALLY_SUCCEEDED", "FAILED", "ABORTED", "TIMED_OUT", "CANCELED"
6015
+ #
6016
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetJobRun AWS API Documentation
6017
+ #
6018
+ # @overload get_job_run(params = {})
6019
+ # @param [Hash] params ({})
6020
+ def get_job_run(params = {}, options = {})
6021
+ req = build_request(:get_job_run, params)
6022
+ req.send_request(options)
6023
+ end
6024
+
6025
+ # Describes the lineage event.
6026
+ #
6027
+ # @option params [required, String] :domain_identifier
6028
+ # The ID of the domain.
6029
+ #
6030
+ # @option params [required, String] :identifier
6031
+ # The ID of the lineage event.
6032
+ #
6033
+ # @return [Types::GetLineageEventOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6034
+ #
6035
+ # * {Types::GetLineageEventOutput#created_at #created_at} => Time
6036
+ # * {Types::GetLineageEventOutput#created_by #created_by} => String
6037
+ # * {Types::GetLineageEventOutput#domain_id #domain_id} => String
6038
+ # * {Types::GetLineageEventOutput#event #event} => String
6039
+ # * {Types::GetLineageEventOutput#event_time #event_time} => Time
6040
+ # * {Types::GetLineageEventOutput#id #id} => String
6041
+ # * {Types::GetLineageEventOutput#processing_status #processing_status} => String
6042
+ #
6043
+ # @example Request syntax with placeholder values
6044
+ #
6045
+ # resp = client.get_lineage_event({
6046
+ # domain_identifier: "DomainId", # required
6047
+ # identifier: "LineageEventIdentifier", # required
6048
+ # })
6049
+ #
6050
+ # @example Response structure
6051
+ #
6052
+ # resp.created_at #=> Time
6053
+ # resp.created_by #=> String
6054
+ # resp.domain_id #=> String
6055
+ # resp.event #=> String
6056
+ # resp.event_time #=> Time
6057
+ # resp.id #=> String
6058
+ # resp.processing_status #=> String, one of "REQUESTED", "PROCESSING", "SUCCESS", "FAILED"
6059
+ #
6060
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetLineageEvent AWS API Documentation
6061
+ #
6062
+ # @overload get_lineage_event(params = {})
6063
+ # @param [Hash] params ({})
6064
+ def get_lineage_event(params = {}, options = {})
6065
+ req = build_request(:get_lineage_event, params)
6066
+ req.send_request(options)
6067
+ end
6068
+
5063
6069
  # Gets the data lineage node.
5064
6070
  #
5065
6071
  # @option params [required, String] :domain_identifier
@@ -5289,12 +6295,15 @@ module Aws::DataZone
5289
6295
  # * {Types::GetProjectOutput#description #description} => String
5290
6296
  # * {Types::GetProjectOutput#domain_id #domain_id} => String
5291
6297
  # * {Types::GetProjectOutput#domain_unit_id #domain_unit_id} => String
6298
+ # * {Types::GetProjectOutput#environment_deployment_details #environment_deployment_details} => Types::EnvironmentDeploymentDetails
5292
6299
  # * {Types::GetProjectOutput#failure_reasons #failure_reasons} => Array&lt;Types::ProjectDeletionError&gt;
5293
6300
  # * {Types::GetProjectOutput#glossary_terms #glossary_terms} => Array&lt;String&gt;
5294
6301
  # * {Types::GetProjectOutput#id #id} => String
5295
6302
  # * {Types::GetProjectOutput#last_updated_at #last_updated_at} => Time
5296
6303
  # * {Types::GetProjectOutput#name #name} => String
6304
+ # * {Types::GetProjectOutput#project_profile_id #project_profile_id} => String
5297
6305
  # * {Types::GetProjectOutput#project_status #project_status} => String
6306
+ # * {Types::GetProjectOutput#user_parameters #user_parameters} => Array&lt;Types::EnvironmentConfigurationUserParameter&gt;
5298
6307
  #
5299
6308
  # @example Request syntax with placeholder values
5300
6309
  #
@@ -5310,6 +6319,11 @@ module Aws::DataZone
5310
6319
  # resp.description #=> String
5311
6320
  # resp.domain_id #=> String
5312
6321
  # resp.domain_unit_id #=> String
6322
+ # resp.environment_deployment_details.environment_failure_reasons #=> Hash
6323
+ # resp.environment_deployment_details.environment_failure_reasons["String"] #=> Array
6324
+ # resp.environment_deployment_details.environment_failure_reasons["String"][0].code #=> String
6325
+ # resp.environment_deployment_details.environment_failure_reasons["String"][0].message #=> String
6326
+ # resp.environment_deployment_details.overall_deployment_status #=> String, one of "PENDING_DEPLOYMENT", "IN_PROGRESS", "SUCCESSFUL", "FAILED_VALIDATION", "FAILED_DEPLOYMENT"
5313
6327
  # resp.failure_reasons #=> Array
5314
6328
  # resp.failure_reasons[0].code #=> String
5315
6329
  # resp.failure_reasons[0].message #=> String
@@ -5318,7 +6332,13 @@ module Aws::DataZone
5318
6332
  # resp.id #=> String
5319
6333
  # resp.last_updated_at #=> Time
5320
6334
  # resp.name #=> String
6335
+ # resp.project_profile_id #=> String
5321
6336
  # resp.project_status #=> String, one of "ACTIVE", "DELETING", "DELETE_FAILED"
6337
+ # resp.user_parameters #=> Array
6338
+ # resp.user_parameters[0].environment_configuration_name #=> String
6339
+ # resp.user_parameters[0].environment_parameters #=> Array
6340
+ # resp.user_parameters[0].environment_parameters[0].name #=> String
6341
+ # resp.user_parameters[0].environment_parameters[0].value #=> String
5322
6342
  #
5323
6343
  # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetProject AWS API Documentation
5324
6344
  #
@@ -5329,6 +6349,154 @@ module Aws::DataZone
5329
6349
  req.send_request(options)
5330
6350
  end
5331
6351
 
6352
+ # The details of the project profile.
6353
+ #
6354
+ # @option params [required, String] :domain_identifier
6355
+ # The ID of the domain.
6356
+ #
6357
+ # @option params [required, String] :identifier
6358
+ # The ID of the project profile.
6359
+ #
6360
+ # @return [Types::GetProjectProfileOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6361
+ #
6362
+ # * {Types::GetProjectProfileOutput#created_at #created_at} => Time
6363
+ # * {Types::GetProjectProfileOutput#created_by #created_by} => String
6364
+ # * {Types::GetProjectProfileOutput#description #description} => String
6365
+ # * {Types::GetProjectProfileOutput#domain_id #domain_id} => String
6366
+ # * {Types::GetProjectProfileOutput#domain_unit_id #domain_unit_id} => String
6367
+ # * {Types::GetProjectProfileOutput#environment_configurations #environment_configurations} => Array&lt;Types::EnvironmentConfiguration&gt;
6368
+ # * {Types::GetProjectProfileOutput#id #id} => String
6369
+ # * {Types::GetProjectProfileOutput#last_updated_at #last_updated_at} => Time
6370
+ # * {Types::GetProjectProfileOutput#name #name} => String
6371
+ # * {Types::GetProjectProfileOutput#status #status} => String
6372
+ #
6373
+ # @example Request syntax with placeholder values
6374
+ #
6375
+ # resp = client.get_project_profile({
6376
+ # domain_identifier: "DomainId", # required
6377
+ # identifier: "ProjectProfileId", # required
6378
+ # })
6379
+ #
6380
+ # @example Response structure
6381
+ #
6382
+ # resp.created_at #=> Time
6383
+ # resp.created_by #=> String
6384
+ # resp.description #=> String
6385
+ # resp.domain_id #=> String
6386
+ # resp.domain_unit_id #=> String
6387
+ # resp.environment_configurations #=> Array
6388
+ # resp.environment_configurations[0].aws_account.aws_account_id #=> String
6389
+ # resp.environment_configurations[0].aws_account.aws_account_id_path #=> String
6390
+ # resp.environment_configurations[0].aws_region.region_name #=> String
6391
+ # resp.environment_configurations[0].aws_region.region_name_path #=> String
6392
+ # resp.environment_configurations[0].configuration_parameters.parameter_overrides #=> Array
6393
+ # resp.environment_configurations[0].configuration_parameters.parameter_overrides[0].is_editable #=> Boolean
6394
+ # resp.environment_configurations[0].configuration_parameters.parameter_overrides[0].name #=> String
6395
+ # resp.environment_configurations[0].configuration_parameters.parameter_overrides[0].value #=> String
6396
+ # resp.environment_configurations[0].configuration_parameters.resolved_parameters #=> Array
6397
+ # resp.environment_configurations[0].configuration_parameters.resolved_parameters[0].is_editable #=> Boolean
6398
+ # resp.environment_configurations[0].configuration_parameters.resolved_parameters[0].name #=> String
6399
+ # resp.environment_configurations[0].configuration_parameters.resolved_parameters[0].value #=> String
6400
+ # resp.environment_configurations[0].configuration_parameters.ssm_path #=> String
6401
+ # resp.environment_configurations[0].deployment_mode #=> String, one of "ON_CREATE", "ON_DEMAND"
6402
+ # resp.environment_configurations[0].deployment_order #=> Integer
6403
+ # resp.environment_configurations[0].description #=> String
6404
+ # resp.environment_configurations[0].environment_blueprint_id #=> String
6405
+ # resp.environment_configurations[0].id #=> String
6406
+ # resp.environment_configurations[0].name #=> String
6407
+ # resp.id #=> String
6408
+ # resp.last_updated_at #=> Time
6409
+ # resp.name #=> String
6410
+ # resp.status #=> String, one of "ENABLED", "DISABLED"
6411
+ #
6412
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetProjectProfile AWS API Documentation
6413
+ #
6414
+ # @overload get_project_profile(params = {})
6415
+ # @param [Hash] params ({})
6416
+ def get_project_profile(params = {}, options = {})
6417
+ req = build_request(:get_project_profile, params)
6418
+ req.send_request(options)
6419
+ end
6420
+
6421
+ # Gets the details of a rule in Amazon DataZone. A rule is a formal
6422
+ # agreement that enforces specific requirements across user workflows
6423
+ # (e.g., publishing assets to the catalog, requesting subscriptions,
6424
+ # creating projects) within the Amazon DataZone data portal. These rules
6425
+ # help maintain consistency, ensure compliance, and uphold governance
6426
+ # standards in data management processes. For instance, a metadata
6427
+ # enforcement rule can specify the required information for creating a
6428
+ # subscription request or publishing a data asset to the catalog,
6429
+ # ensuring alignment with organizational standards.
6430
+ #
6431
+ # @option params [required, String] :domain_identifier
6432
+ # The ID of the domain where the `GetRule` action is to be invoked.
6433
+ #
6434
+ # @option params [required, String] :identifier
6435
+ # The ID of the rule.
6436
+ #
6437
+ # @option params [String] :revision
6438
+ # The revision of the rule.
6439
+ #
6440
+ # @return [Types::GetRuleOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6441
+ #
6442
+ # * {Types::GetRuleOutput#action #action} => String
6443
+ # * {Types::GetRuleOutput#created_at #created_at} => Time
6444
+ # * {Types::GetRuleOutput#created_by #created_by} => String
6445
+ # * {Types::GetRuleOutput#description #description} => String
6446
+ # * {Types::GetRuleOutput#detail #detail} => Types::RuleDetail
6447
+ # * {Types::GetRuleOutput#identifier #identifier} => String
6448
+ # * {Types::GetRuleOutput#last_updated_by #last_updated_by} => String
6449
+ # * {Types::GetRuleOutput#name #name} => String
6450
+ # * {Types::GetRuleOutput#revision #revision} => String
6451
+ # * {Types::GetRuleOutput#rule_type #rule_type} => String
6452
+ # * {Types::GetRuleOutput#scope #scope} => Types::RuleScope
6453
+ # * {Types::GetRuleOutput#target #target} => Types::RuleTarget
6454
+ # * {Types::GetRuleOutput#target_type #target_type} => String
6455
+ # * {Types::GetRuleOutput#updated_at #updated_at} => Time
6456
+ #
6457
+ # @example Request syntax with placeholder values
6458
+ #
6459
+ # resp = client.get_rule({
6460
+ # domain_identifier: "DomainId", # required
6461
+ # identifier: "RuleId", # required
6462
+ # revision: "Revision",
6463
+ # })
6464
+ #
6465
+ # @example Response structure
6466
+ #
6467
+ # resp.action #=> String, one of "CREATE_SUBSCRIPTION_REQUEST"
6468
+ # resp.created_at #=> Time
6469
+ # resp.created_by #=> String
6470
+ # resp.description #=> String
6471
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms #=> Array
6472
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms[0].type_identifier #=> String
6473
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms[0].type_revision #=> String
6474
+ # resp.identifier #=> String
6475
+ # resp.last_updated_by #=> String
6476
+ # resp.name #=> String
6477
+ # resp.revision #=> String
6478
+ # resp.rule_type #=> String, one of "METADATA_FORM_ENFORCEMENT"
6479
+ # resp.scope.asset_type.selection_mode #=> String, one of "ALL", "SPECIFIC"
6480
+ # resp.scope.asset_type.specific_asset_types #=> Array
6481
+ # resp.scope.asset_type.specific_asset_types[0] #=> String
6482
+ # resp.scope.data_product #=> Boolean
6483
+ # resp.scope.project.selection_mode #=> String, one of "ALL", "SPECIFIC"
6484
+ # resp.scope.project.specific_projects #=> Array
6485
+ # resp.scope.project.specific_projects[0] #=> String
6486
+ # resp.target.domain_unit_target.domain_unit_id #=> String
6487
+ # resp.target.domain_unit_target.include_child_domain_units #=> Boolean
6488
+ # resp.target_type #=> String, one of "DOMAIN_UNIT"
6489
+ # resp.updated_at #=> Time
6490
+ #
6491
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetRule AWS API Documentation
6492
+ #
6493
+ # @overload get_rule(params = {})
6494
+ # @param [Hash] params ({})
6495
+ def get_rule(params = {}, options = {})
6496
+ req = build_request(:get_rule, params)
6497
+ req.send_request(options)
6498
+ end
6499
+
5332
6500
  # Gets a subscription in Amazon DataZone.
5333
6501
  #
5334
6502
  # @option params [required, String] :domain_identifier
@@ -5492,7 +6660,9 @@ module Aws::DataZone
5492
6660
  # * {Types::GetSubscriptionRequestDetailsOutput#created_by #created_by} => String
5493
6661
  # * {Types::GetSubscriptionRequestDetailsOutput#decision_comment #decision_comment} => String
5494
6662
  # * {Types::GetSubscriptionRequestDetailsOutput#domain_id #domain_id} => String
6663
+ # * {Types::GetSubscriptionRequestDetailsOutput#existing_subscription_id #existing_subscription_id} => String
5495
6664
  # * {Types::GetSubscriptionRequestDetailsOutput#id #id} => String
6665
+ # * {Types::GetSubscriptionRequestDetailsOutput#metadata_forms #metadata_forms} => Array&lt;Types::FormOutput&gt;
5496
6666
  # * {Types::GetSubscriptionRequestDetailsOutput#request_reason #request_reason} => String
5497
6667
  # * {Types::GetSubscriptionRequestDetailsOutput#reviewer_id #reviewer_id} => String
5498
6668
  # * {Types::GetSubscriptionRequestDetailsOutput#status #status} => String
@@ -5514,7 +6684,13 @@ module Aws::DataZone
5514
6684
  # resp.created_by #=> String
5515
6685
  # resp.decision_comment #=> String
5516
6686
  # resp.domain_id #=> String
6687
+ # resp.existing_subscription_id #=> String
5517
6688
  # resp.id #=> String
6689
+ # resp.metadata_forms #=> Array
6690
+ # resp.metadata_forms[0].content #=> String
6691
+ # resp.metadata_forms[0].form_name #=> String
6692
+ # resp.metadata_forms[0].type_name #=> String
6693
+ # resp.metadata_forms[0].type_revision #=> String
5518
6694
  # resp.request_reason #=> String
5519
6695
  # resp.reviewer_id #=> String
5520
6696
  # resp.status #=> String, one of "PENDING", "ACCEPTED", "REJECTED"
@@ -5865,6 +7041,182 @@ module Aws::DataZone
5865
7041
  req.send_request(options)
5866
7042
  end
5867
7043
 
7044
+ # Lists connections. In Amazon DataZone, a connection enables you to
7045
+ # connect your resources (domains, projects, and environments) to
7046
+ # external resources and services.
7047
+ #
7048
+ # @option params [required, String] :domain_identifier
7049
+ # The ID of the domain where you want to list connections.
7050
+ #
7051
+ # @option params [String] :environment_identifier
7052
+ # The ID of the environment where you want to list connections.
7053
+ #
7054
+ # @option params [Integer] :max_results
7055
+ # The maximum number of connections to return in a single call to
7056
+ # ListConnections. When the number of connections to be listed is
7057
+ # greater than the value of MaxResults, the response contains a
7058
+ # NextToken value that you can use in a subsequent call to
7059
+ # ListConnections to list the next set of connections.
7060
+ #
7061
+ # @option params [String] :name
7062
+ # The name of the connection.
7063
+ #
7064
+ # @option params [String] :next_token
7065
+ # When the number of connections is greater than the default value for
7066
+ # the MaxResults parameter, or if you explicitly specify a value for
7067
+ # MaxResults that is less than the number of connections, the response
7068
+ # includes a pagination token named NextToken. You can specify this
7069
+ # NextToken value in a subsequent call to ListConnections to list the
7070
+ # next set of connections.
7071
+ #
7072
+ # @option params [required, String] :project_identifier
7073
+ # The ID of the project where you want to list connections.
7074
+ #
7075
+ # @option params [String] :sort_by
7076
+ # Specifies how you want to sort the listed connections.
7077
+ #
7078
+ # @option params [String] :sort_order
7079
+ # Specifies the sort order for the listed connections.
7080
+ #
7081
+ # @option params [String] :type
7082
+ # The type of connection.
7083
+ #
7084
+ # @return [Types::ListConnectionsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7085
+ #
7086
+ # * {Types::ListConnectionsOutput#items #items} => Array&lt;Types::ConnectionSummary&gt;
7087
+ # * {Types::ListConnectionsOutput#next_token #next_token} => String
7088
+ #
7089
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
7090
+ #
7091
+ # @example Request syntax with placeholder values
7092
+ #
7093
+ # resp = client.list_connections({
7094
+ # domain_identifier: "DomainId", # required
7095
+ # environment_identifier: "EnvironmentId",
7096
+ # max_results: 1,
7097
+ # name: "ConnectionName",
7098
+ # next_token: "PaginationToken",
7099
+ # project_identifier: "ProjectId", # required
7100
+ # sort_by: "NAME", # accepts NAME
7101
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
7102
+ # type: "ATHENA", # accepts ATHENA, BIGQUERY, DATABRICKS, DOCUMENTDB, DYNAMODB, HYPERPOD, IAM, MYSQL, OPENSEARCH, ORACLE, POSTGRESQL, REDSHIFT, SAPHANA, SNOWFLAKE, SPARK, SQLSERVER, TERADATA, VERTICA, WORKFLOWS_MWAA
7103
+ # })
7104
+ #
7105
+ # @example Response structure
7106
+ #
7107
+ # resp.items #=> Array
7108
+ # resp.items[0].connection_id #=> String
7109
+ # resp.items[0].domain_id #=> String
7110
+ # resp.items[0].domain_unit_id #=> String
7111
+ # resp.items[0].environment_id #=> String
7112
+ # resp.items[0].name #=> String
7113
+ # resp.items[0].physical_endpoints #=> Array
7114
+ # resp.items[0].physical_endpoints[0].aws_location.access_role #=> String
7115
+ # resp.items[0].physical_endpoints[0].aws_location.aws_account_id #=> String
7116
+ # resp.items[0].physical_endpoints[0].aws_location.aws_region #=> String
7117
+ # resp.items[0].physical_endpoints[0].aws_location.iam_connection_id #=> String
7118
+ # resp.items[0].physical_endpoints[0].glue_connection.athena_properties #=> Hash
7119
+ # resp.items[0].physical_endpoints[0].glue_connection.athena_properties["PropertyMapKeyString"] #=> String
7120
+ # resp.items[0].physical_endpoints[0].glue_connection.authentication_configuration.authentication_type #=> String, one of "BASIC", "OAUTH2", "CUSTOM"
7121
+ # resp.items[0].physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.authorization_code_properties.authorization_code #=> String
7122
+ # resp.items[0].physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.authorization_code_properties.redirect_uri #=> String
7123
+ # resp.items[0].physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_client_application.a_ws_managed_client_application_reference #=> String
7124
+ # resp.items[0].physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_client_application.user_managed_client_application_client_id #=> String
7125
+ # resp.items[0].physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_credentials.access_token #=> String
7126
+ # resp.items[0].physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_credentials.jwt_token #=> String
7127
+ # resp.items[0].physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_credentials.refresh_token #=> String
7128
+ # resp.items[0].physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_credentials.user_managed_client_application_client_secret #=> String
7129
+ # resp.items[0].physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_grant_type #=> String, one of "AUTHORIZATION_CODE", "CLIENT_CREDENTIALS", "JWT_BEARER"
7130
+ # resp.items[0].physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.token_url #=> String
7131
+ # resp.items[0].physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.token_url_parameters_map #=> Hash
7132
+ # resp.items[0].physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.token_url_parameters_map["TokenUrlParametersMapKeyString"] #=> String
7133
+ # resp.items[0].physical_endpoints[0].glue_connection.authentication_configuration.secret_arn #=> String
7134
+ # resp.items[0].physical_endpoints[0].glue_connection.compatible_compute_environments #=> Array
7135
+ # resp.items[0].physical_endpoints[0].glue_connection.compatible_compute_environments[0] #=> String, one of "SPARK", "ATHENA", "PYTHON"
7136
+ # resp.items[0].physical_endpoints[0].glue_connection.connection_properties #=> Hash
7137
+ # resp.items[0].physical_endpoints[0].glue_connection.connection_properties["String"] #=> String
7138
+ # resp.items[0].physical_endpoints[0].glue_connection.connection_schema_version #=> Integer
7139
+ # resp.items[0].physical_endpoints[0].glue_connection.connection_type #=> String, one of "ATHENA", "BIGQUERY", "DATABRICKS", "DOCUMENTDB", "DYNAMODB", "HYPERPOD", "IAM", "MYSQL", "OPENSEARCH", "ORACLE", "POSTGRESQL", "REDSHIFT", "SAPHANA", "SNOWFLAKE", "SPARK", "SQLSERVER", "TERADATA", "VERTICA", "WORKFLOWS_MWAA"
7140
+ # resp.items[0].physical_endpoints[0].glue_connection.creation_time #=> Time
7141
+ # resp.items[0].physical_endpoints[0].glue_connection.description #=> String
7142
+ # resp.items[0].physical_endpoints[0].glue_connection.last_connection_validation_time #=> Time
7143
+ # resp.items[0].physical_endpoints[0].glue_connection.last_updated_by #=> String
7144
+ # resp.items[0].physical_endpoints[0].glue_connection.last_updated_time #=> Time
7145
+ # resp.items[0].physical_endpoints[0].glue_connection.match_criteria #=> Array
7146
+ # resp.items[0].physical_endpoints[0].glue_connection.match_criteria[0] #=> String
7147
+ # resp.items[0].physical_endpoints[0].glue_connection.name #=> String
7148
+ # resp.items[0].physical_endpoints[0].glue_connection.physical_connection_requirements.availability_zone #=> String
7149
+ # resp.items[0].physical_endpoints[0].glue_connection.physical_connection_requirements.security_group_id_list #=> Array
7150
+ # resp.items[0].physical_endpoints[0].glue_connection.physical_connection_requirements.security_group_id_list[0] #=> String
7151
+ # resp.items[0].physical_endpoints[0].glue_connection.physical_connection_requirements.subnet_id #=> String
7152
+ # resp.items[0].physical_endpoints[0].glue_connection.physical_connection_requirements.subnet_id_list #=> Array
7153
+ # resp.items[0].physical_endpoints[0].glue_connection.physical_connection_requirements.subnet_id_list[0] #=> String
7154
+ # resp.items[0].physical_endpoints[0].glue_connection.python_properties #=> Hash
7155
+ # resp.items[0].physical_endpoints[0].glue_connection.python_properties["PropertyMapKeyString"] #=> String
7156
+ # resp.items[0].physical_endpoints[0].glue_connection.spark_properties #=> Hash
7157
+ # resp.items[0].physical_endpoints[0].glue_connection.spark_properties["PropertyMapKeyString"] #=> String
7158
+ # resp.items[0].physical_endpoints[0].glue_connection.status #=> String, one of "CREATING", "CREATE_FAILED", "DELETING", "DELETE_FAILED", "READY", "UPDATING", "UPDATE_FAILED", "DELETED"
7159
+ # resp.items[0].physical_endpoints[0].glue_connection.status_reason #=> String
7160
+ # resp.items[0].physical_endpoints[0].glue_connection_name #=> String
7161
+ # resp.items[0].physical_endpoints[0].host #=> String
7162
+ # resp.items[0].physical_endpoints[0].port #=> Integer
7163
+ # resp.items[0].physical_endpoints[0].protocol #=> String, one of "ATHENA", "GLUE_INTERACTIVE_SESSION", "HTTPS", "JDBC", "LIVY", "ODBC", "PRISM"
7164
+ # resp.items[0].physical_endpoints[0].stage #=> String
7165
+ # resp.items[0].project_id #=> String
7166
+ # resp.items[0].props.athena_properties.workgroup_name #=> String
7167
+ # resp.items[0].props.glue_properties.error_message #=> String
7168
+ # resp.items[0].props.glue_properties.status #=> String, one of "CREATING", "CREATE_FAILED", "DELETING", "DELETE_FAILED", "READY", "UPDATING", "UPDATE_FAILED", "DELETED"
7169
+ # resp.items[0].props.hyper_pod_properties.cluster_arn #=> String
7170
+ # resp.items[0].props.hyper_pod_properties.cluster_name #=> String
7171
+ # resp.items[0].props.hyper_pod_properties.orchestrator #=> String, one of "EKS", "SLURM"
7172
+ # resp.items[0].props.iam_properties.environment_id #=> String
7173
+ # resp.items[0].props.iam_properties.glue_lineage_sync_enabled #=> Boolean
7174
+ # resp.items[0].props.redshift_properties.credentials.secret_arn #=> String
7175
+ # resp.items[0].props.redshift_properties.credentials.username_password.password #=> String
7176
+ # resp.items[0].props.redshift_properties.credentials.username_password.username #=> String
7177
+ # resp.items[0].props.redshift_properties.database_name #=> String
7178
+ # resp.items[0].props.redshift_properties.is_provisioned_secret #=> Boolean
7179
+ # resp.items[0].props.redshift_properties.jdbc_iam_url #=> String
7180
+ # resp.items[0].props.redshift_properties.jdbc_url #=> String
7181
+ # resp.items[0].props.redshift_properties.lineage_sync.enabled #=> Boolean
7182
+ # resp.items[0].props.redshift_properties.lineage_sync.lineage_job_id #=> String
7183
+ # resp.items[0].props.redshift_properties.lineage_sync.schedule.schedule #=> String
7184
+ # resp.items[0].props.redshift_properties.redshift_temp_dir #=> String
7185
+ # resp.items[0].props.redshift_properties.status #=> String, one of "CREATING", "CREATE_FAILED", "DELETING", "DELETE_FAILED", "READY", "UPDATING", "UPDATE_FAILED", "DELETED"
7186
+ # resp.items[0].props.redshift_properties.storage.cluster_name #=> String
7187
+ # resp.items[0].props.redshift_properties.storage.workgroup_name #=> String
7188
+ # resp.items[0].props.spark_emr_properties.compute_arn #=> String
7189
+ # resp.items[0].props.spark_emr_properties.credentials.password #=> String
7190
+ # resp.items[0].props.spark_emr_properties.credentials.username #=> String
7191
+ # resp.items[0].props.spark_emr_properties.credentials_expiration #=> Time
7192
+ # resp.items[0].props.spark_emr_properties.governance_type #=> String, one of "AWS_MANAGED", "USER_MANAGED"
7193
+ # resp.items[0].props.spark_emr_properties.instance_profile_arn #=> String
7194
+ # resp.items[0].props.spark_emr_properties.java_virtual_env #=> String
7195
+ # resp.items[0].props.spark_emr_properties.livy_endpoint #=> String
7196
+ # resp.items[0].props.spark_emr_properties.log_uri #=> String
7197
+ # resp.items[0].props.spark_emr_properties.python_virtual_env #=> String
7198
+ # resp.items[0].props.spark_emr_properties.runtime_role #=> String
7199
+ # resp.items[0].props.spark_emr_properties.trusted_certificates_s3_uri #=> String
7200
+ # resp.items[0].props.spark_glue_properties.additional_args.connection #=> String
7201
+ # resp.items[0].props.spark_glue_properties.glue_connection_name #=> String
7202
+ # resp.items[0].props.spark_glue_properties.glue_version #=> String
7203
+ # resp.items[0].props.spark_glue_properties.idle_timeout #=> Integer
7204
+ # resp.items[0].props.spark_glue_properties.java_virtual_env #=> String
7205
+ # resp.items[0].props.spark_glue_properties.number_of_workers #=> Integer
7206
+ # resp.items[0].props.spark_glue_properties.python_virtual_env #=> String
7207
+ # resp.items[0].props.spark_glue_properties.worker_type #=> String
7208
+ # resp.items[0].type #=> String, one of "ATHENA", "BIGQUERY", "DATABRICKS", "DOCUMENTDB", "DYNAMODB", "HYPERPOD", "IAM", "MYSQL", "OPENSEARCH", "ORACLE", "POSTGRESQL", "REDSHIFT", "SAPHANA", "SNOWFLAKE", "SPARK", "SQLSERVER", "TERADATA", "VERTICA", "WORKFLOWS_MWAA"
7209
+ # resp.next_token #=> String
7210
+ #
7211
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListConnections AWS API Documentation
7212
+ #
7213
+ # @overload list_connections(params = {})
7214
+ # @param [Hash] params ({})
7215
+ def list_connections(params = {}, options = {})
7216
+ req = build_request(:list_connections, params)
7217
+ req.send_request(options)
7218
+ end
7219
+
5868
7220
  # Lists data product revisions.
5869
7221
  #
5870
7222
  # @option params [required, String] :domain_identifier
@@ -5980,6 +7332,9 @@ module Aws::DataZone
5980
7332
  # resp.items[0].database #=> String
5981
7333
  # resp.items[0].error_message.error_detail #=> String
5982
7334
  # resp.items[0].error_message.error_type #=> String, one of "ACCESS_DENIED_EXCEPTION", "CONFLICT_EXCEPTION", "INTERNAL_SERVER_EXCEPTION", "RESOURCE_NOT_FOUND_EXCEPTION", "SERVICE_QUOTA_EXCEEDED_EXCEPTION", "THROTTLING_EXCEPTION", "VALIDATION_EXCEPTION"
7335
+ # resp.items[0].lineage_summary.error_message #=> String
7336
+ # resp.items[0].lineage_summary.event_id #=> String
7337
+ # resp.items[0].lineage_summary.event_status #=> String, one of "REQUESTED", "PROCESSING", "SUCCESS", "FAILED"
5983
7338
  # resp.items[0].project_id #=> String
5984
7339
  # resp.items[0].technical_description #=> String
5985
7340
  # resp.items[0].technical_name #=> String
@@ -6047,6 +7402,7 @@ module Aws::DataZone
6047
7402
  # resp.items[0].error_message.error_detail #=> String
6048
7403
  # resp.items[0].error_message.error_type #=> String, one of "ACCESS_DENIED_EXCEPTION", "CONFLICT_EXCEPTION", "INTERNAL_SERVER_EXCEPTION", "RESOURCE_NOT_FOUND_EXCEPTION", "SERVICE_QUOTA_EXCEEDED_EXCEPTION", "THROTTLING_EXCEPTION", "VALIDATION_EXCEPTION"
6049
7404
  # resp.items[0].id #=> String
7405
+ # resp.items[0].lineage_summary.import_status #=> String, one of "IN_PROGRESS", "SUCCESS", "FAILED", "PARTIALLY_SUCCEEDED"
6050
7406
  # resp.items[0].project_id #=> String
6051
7407
  # resp.items[0].run_statistics_for_assets.added #=> Integer
6052
7408
  # resp.items[0].run_statistics_for_assets.failed #=> Integer
@@ -6071,6 +7427,9 @@ module Aws::DataZone
6071
7427
 
6072
7428
  # Lists data sources in Amazon DataZone.
6073
7429
  #
7430
+ # @option params [String] :connection_identifier
7431
+ # The ID of the connection.
7432
+ #
6074
7433
  # @option params [required, String] :domain_identifier
6075
7434
  # The identifier of the Amazon DataZone domain in which to list the data
6076
7435
  # sources.
@@ -6115,6 +7474,7 @@ module Aws::DataZone
6115
7474
  # @example Request syntax with placeholder values
6116
7475
  #
6117
7476
  # resp = client.list_data_sources({
7477
+ # connection_identifier: "String",
6118
7478
  # domain_identifier: "DomainId", # required
6119
7479
  # environment_identifier: "String",
6120
7480
  # max_results: 1,
@@ -6128,8 +7488,10 @@ module Aws::DataZone
6128
7488
  # @example Response structure
6129
7489
  #
6130
7490
  # resp.items #=> Array
7491
+ # resp.items[0].connection_id #=> String
6131
7492
  # resp.items[0].created_at #=> Time
6132
7493
  # resp.items[0].data_source_id #=> String
7494
+ # resp.items[0].description #=> String
6133
7495
  # resp.items[0].domain_id #=> String
6134
7496
  # resp.items[0].enable_setting #=> String, one of "ENABLED", "DISABLED"
6135
7497
  # resp.items[0].environment_id #=> String
@@ -6252,6 +7614,7 @@ module Aws::DataZone
6252
7614
  # resp.items[0].arn #=> String
6253
7615
  # resp.items[0].created_at #=> Time
6254
7616
  # resp.items[0].description #=> String
7617
+ # resp.items[0].domain_version #=> String, one of "V1", "V2"
6255
7618
  # resp.items[0].id #=> String
6256
7619
  # resp.items[0].last_updated_at #=> Time
6257
7620
  # resp.items[0].managed_account_id #=> String
@@ -6433,6 +7796,7 @@ module Aws::DataZone
6433
7796
  # resp.items[0].enabled_regions #=> Array
6434
7797
  # resp.items[0].enabled_regions[0] #=> String
6435
7798
  # resp.items[0].environment_blueprint_id #=> String
7799
+ # resp.items[0].environment_role_permission_boundary #=> String
6436
7800
  # resp.items[0].manage_access_role_arn #=> String
6437
7801
  # resp.items[0].provisioning_configurations #=> Array
6438
7802
  # resp.items[0].provisioning_configurations[0].lake_formation_configuration.location_registration_exclude_s3_locations #=> Array
@@ -6681,21 +8045,174 @@ module Aws::DataZone
6681
8045
  # resp.items[0].created_by #=> String
6682
8046
  # resp.items[0].description #=> String
6683
8047
  # resp.items[0].domain_id #=> String
6684
- # resp.items[0].environment_profile_id #=> String
8048
+ # resp.items[0].environment_profile_id #=> String
8049
+ # resp.items[0].id #=> String
8050
+ # resp.items[0].name #=> String
8051
+ # resp.items[0].project_id #=> String
8052
+ # resp.items[0].provider #=> String
8053
+ # resp.items[0].status #=> String, one of "ACTIVE", "CREATING", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED", "VALIDATION_FAILED", "SUSPENDED", "DISABLED", "EXPIRED", "DELETED", "INACCESSIBLE"
8054
+ # resp.items[0].updated_at #=> Time
8055
+ # resp.next_token #=> String
8056
+ #
8057
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListEnvironments AWS API Documentation
8058
+ #
8059
+ # @overload list_environments(params = {})
8060
+ # @param [Hash] params ({})
8061
+ def list_environments(params = {}, options = {})
8062
+ req = build_request(:list_environments, params)
8063
+ req.send_request(options)
8064
+ end
8065
+
8066
+ # Lists job runs.
8067
+ #
8068
+ # @option params [required, String] :domain_identifier
8069
+ # The ID of the domain where you want to list job runs.
8070
+ #
8071
+ # @option params [required, String] :job_identifier
8072
+ # The ID of the job run.
8073
+ #
8074
+ # @option params [Integer] :max_results
8075
+ # The maximum number of job runs to return in a single call to
8076
+ # ListJobRuns. When the number of job runs to be listed is greater than
8077
+ # the value of MaxResults, the response contains a NextToken value that
8078
+ # you can use in a subsequent call to ListJobRuns to list the next set
8079
+ # of job runs.
8080
+ #
8081
+ # @option params [String] :next_token
8082
+ # When the number of job runs is greater than the default value for the
8083
+ # MaxResults parameter, or if you explicitly specify a value for
8084
+ # MaxResults that is less than the number of job runs, the response
8085
+ # includes a pagination token named NextToken. You can specify this
8086
+ # NextToken value in a subsequent call to ListJobRuns to list the next
8087
+ # set of job runs.
8088
+ #
8089
+ # @option params [String] :sort_order
8090
+ # Specifies the order in which job runs are to be sorted.
8091
+ #
8092
+ # @option params [String] :status
8093
+ # The status of a job run.
8094
+ #
8095
+ # @return [Types::ListJobRunsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8096
+ #
8097
+ # * {Types::ListJobRunsOutput#items #items} => Array&lt;Types::JobRunSummary&gt;
8098
+ # * {Types::ListJobRunsOutput#next_token #next_token} => String
8099
+ #
8100
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
8101
+ #
8102
+ # @example Request syntax with placeholder values
8103
+ #
8104
+ # resp = client.list_job_runs({
8105
+ # domain_identifier: "DomainId", # required
8106
+ # job_identifier: "ListJobRunsInputJobIdentifierString", # required
8107
+ # max_results: 1,
8108
+ # next_token: "PaginationToken",
8109
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
8110
+ # status: "SCHEDULED", # accepts SCHEDULED, IN_PROGRESS, SUCCESS, PARTIALLY_SUCCEEDED, FAILED, ABORTED, TIMED_OUT, CANCELED
8111
+ # })
8112
+ #
8113
+ # @example Response structure
8114
+ #
8115
+ # resp.items #=> Array
8116
+ # resp.items[0].created_at #=> Time
8117
+ # resp.items[0].created_by #=> String
8118
+ # resp.items[0].domain_id #=> String
8119
+ # resp.items[0].end_time #=> Time
8120
+ # resp.items[0].error.message #=> String
8121
+ # resp.items[0].job_id #=> String
8122
+ # resp.items[0].job_type #=> String, one of "LINEAGE"
8123
+ # resp.items[0].run_id #=> String
8124
+ # resp.items[0].run_mode #=> String, one of "SCHEDULED", "ON_DEMAND"
8125
+ # resp.items[0].start_time #=> Time
8126
+ # resp.items[0].status #=> String, one of "SCHEDULED", "IN_PROGRESS", "SUCCESS", "PARTIALLY_SUCCEEDED", "FAILED", "ABORTED", "TIMED_OUT", "CANCELED"
8127
+ # resp.next_token #=> String
8128
+ #
8129
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListJobRuns AWS API Documentation
8130
+ #
8131
+ # @overload list_job_runs(params = {})
8132
+ # @param [Hash] params ({})
8133
+ def list_job_runs(params = {}, options = {})
8134
+ req = build_request(:list_job_runs, params)
8135
+ req.send_request(options)
8136
+ end
8137
+
8138
+ # Lists lineage events.
8139
+ #
8140
+ # @option params [required, String] :domain_identifier
8141
+ # The ID of the domain where you want to list lineage events.
8142
+ #
8143
+ # @option params [Integer] :max_results
8144
+ # The maximum number of lineage events to return in a single call to
8145
+ # ListLineageEvents. When the number of lineage events to be listed is
8146
+ # greater than the value of MaxResults, the response contains a
8147
+ # NextToken value that you can use in a subsequent call to
8148
+ # ListLineageEvents to list the next set of lineage events.
8149
+ #
8150
+ # @option params [String] :next_token
8151
+ # When the number of lineage events is greater than the default value
8152
+ # for the MaxResults parameter, or if you explicitly specify a value for
8153
+ # MaxResults that is less than the number of lineage events, the
8154
+ # response includes a pagination token named NextToken. You can specify
8155
+ # this NextToken value in a subsequent call to ListLineageEvents to list
8156
+ # the next set of lineage events.
8157
+ #
8158
+ # @option params [String] :processing_status
8159
+ # The processing status of a lineage event.
8160
+ #
8161
+ # @option params [String] :sort_order
8162
+ # The sort order of the lineage events.
8163
+ #
8164
+ # @option params [Time,DateTime,Date,Integer,String] :timestamp_after
8165
+ # The after timestamp of a lineage event.
8166
+ #
8167
+ # @option params [Time,DateTime,Date,Integer,String] :timestamp_before
8168
+ # The before timestamp of a lineage event.
8169
+ #
8170
+ # @return [Types::ListLineageEventsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8171
+ #
8172
+ # * {Types::ListLineageEventsOutput#items #items} => Array&lt;Types::LineageEventSummary&gt;
8173
+ # * {Types::ListLineageEventsOutput#next_token #next_token} => String
8174
+ #
8175
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
8176
+ #
8177
+ # @example Request syntax with placeholder values
8178
+ #
8179
+ # resp = client.list_lineage_events({
8180
+ # domain_identifier: "DomainId", # required
8181
+ # max_results: 1,
8182
+ # next_token: "PaginationToken",
8183
+ # processing_status: "REQUESTED", # accepts REQUESTED, PROCESSING, SUCCESS, FAILED
8184
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
8185
+ # timestamp_after: Time.now,
8186
+ # timestamp_before: Time.now,
8187
+ # })
8188
+ #
8189
+ # @example Response structure
8190
+ #
8191
+ # resp.items #=> Array
8192
+ # resp.items[0].created_at #=> Time
8193
+ # resp.items[0].created_by #=> String
8194
+ # resp.items[0].domain_id #=> String
8195
+ # resp.items[0].event_summary.open_lineage_run_event_summary.event_type #=> String, one of "START", "RUNNING", "COMPLETE", "ABORT", "FAIL", "OTHER"
8196
+ # resp.items[0].event_summary.open_lineage_run_event_summary.inputs #=> Array
8197
+ # resp.items[0].event_summary.open_lineage_run_event_summary.inputs[0].name #=> String
8198
+ # resp.items[0].event_summary.open_lineage_run_event_summary.inputs[0].namespace #=> String
8199
+ # resp.items[0].event_summary.open_lineage_run_event_summary.job.name #=> String
8200
+ # resp.items[0].event_summary.open_lineage_run_event_summary.job.namespace #=> String
8201
+ # resp.items[0].event_summary.open_lineage_run_event_summary.outputs #=> Array
8202
+ # resp.items[0].event_summary.open_lineage_run_event_summary.outputs[0].name #=> String
8203
+ # resp.items[0].event_summary.open_lineage_run_event_summary.outputs[0].namespace #=> String
8204
+ # resp.items[0].event_summary.open_lineage_run_event_summary.run_id #=> String
8205
+ # resp.items[0].event_time #=> Time
6685
8206
  # resp.items[0].id #=> String
6686
- # resp.items[0].name #=> String
6687
- # resp.items[0].project_id #=> String
6688
- # resp.items[0].provider #=> String
6689
- # resp.items[0].status #=> String, one of "ACTIVE", "CREATING", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED", "VALIDATION_FAILED", "SUSPENDED", "DISABLED", "EXPIRED", "DELETED", "INACCESSIBLE"
6690
- # resp.items[0].updated_at #=> Time
8207
+ # resp.items[0].processing_status #=> String, one of "REQUESTED", "PROCESSING", "SUCCESS", "FAILED"
6691
8208
  # resp.next_token #=> String
6692
8209
  #
6693
- # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListEnvironments AWS API Documentation
8210
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListLineageEvents AWS API Documentation
6694
8211
  #
6695
- # @overload list_environments(params = {})
8212
+ # @overload list_lineage_events(params = {})
6696
8213
  # @param [Hash] params ({})
6697
- def list_environments(params = {}, options = {})
6698
- req = build_request(:list_environments, params)
8214
+ def list_lineage_events(params = {}, options = {})
8215
+ req = build_request(:list_lineage_events, params)
6699
8216
  req.send_request(options)
6700
8217
  end
6701
8218
 
@@ -6984,7 +8501,7 @@ module Aws::DataZone
6984
8501
  # entity_type: "DOMAIN_UNIT", # required, accepts DOMAIN_UNIT, ENVIRONMENT_BLUEPRINT_CONFIGURATION, ENVIRONMENT_PROFILE
6985
8502
  # max_results: 1,
6986
8503
  # next_token: "PaginationToken",
6987
- # policy_type: "CREATE_DOMAIN_UNIT", # required, accepts CREATE_DOMAIN_UNIT, OVERRIDE_DOMAIN_UNIT_OWNERS, ADD_TO_PROJECT_MEMBER_POOL, OVERRIDE_PROJECT_OWNERS, CREATE_GLOSSARY, CREATE_FORM_TYPE, CREATE_ASSET_TYPE, CREATE_PROJECT, CREATE_ENVIRONMENT_PROFILE, DELEGATE_CREATE_ENVIRONMENT_PROFILE, CREATE_ENVIRONMENT
8504
+ # policy_type: "CREATE_DOMAIN_UNIT", # required, accepts CREATE_DOMAIN_UNIT, OVERRIDE_DOMAIN_UNIT_OWNERS, ADD_TO_PROJECT_MEMBER_POOL, OVERRIDE_PROJECT_OWNERS, CREATE_GLOSSARY, CREATE_FORM_TYPE, CREATE_ASSET_TYPE, CREATE_PROJECT, CREATE_ENVIRONMENT_PROFILE, DELEGATE_CREATE_ENVIRONMENT_PROFILE, CREATE_ENVIRONMENT, CREATE_ENVIRONMENT_FROM_BLUEPRINT, CREATE_PROJECT_FROM_PROJECT_PROFILE
6988
8505
  # })
6989
8506
  #
6990
8507
  # @example Response structure
@@ -6999,6 +8516,9 @@ module Aws::DataZone
6999
8516
  # resp.grant_list[0].detail.create_form_type.include_child_domain_units #=> Boolean
7000
8517
  # resp.grant_list[0].detail.create_glossary.include_child_domain_units #=> Boolean
7001
8518
  # resp.grant_list[0].detail.create_project.include_child_domain_units #=> Boolean
8519
+ # resp.grant_list[0].detail.create_project_from_project_profile.include_child_domain_units #=> Boolean
8520
+ # resp.grant_list[0].detail.create_project_from_project_profile.project_profiles #=> Array
8521
+ # resp.grant_list[0].detail.create_project_from_project_profile.project_profiles[0] #=> String
7002
8522
  # resp.grant_list[0].detail.override_domain_unit_owners.include_child_domain_units #=> Boolean
7003
8523
  # resp.grant_list[0].detail.override_project_owners.include_child_domain_units #=> Boolean
7004
8524
  # resp.grant_list[0].principal.domain_unit.domain_unit_designation #=> String, one of "OWNER"
@@ -7085,6 +8605,76 @@ module Aws::DataZone
7085
8605
  req.send_request(options)
7086
8606
  end
7087
8607
 
8608
+ # Lists project profiles.
8609
+ #
8610
+ # @option params [required, String] :domain_identifier
8611
+ # The ID of the domain where you want to list project profiles.
8612
+ #
8613
+ # @option params [Integer] :max_results
8614
+ # The maximum number of project profiles to return in a single call to
8615
+ # ListProjectProfiles. When the number of project profiles to be listed
8616
+ # is greater than the value of MaxResults, the response contains a
8617
+ # NextToken value that you can use in a subsequent call to
8618
+ # ListProjectProfiles to list the next set of project profiles.
8619
+ #
8620
+ # @option params [String] :name
8621
+ # The name of a project profile.
8622
+ #
8623
+ # @option params [String] :next_token
8624
+ # When the number of project profiles is greater than the default value
8625
+ # for the MaxResults parameter, or if you explicitly specify a value for
8626
+ # MaxResults that is less than the number of project profiles, the
8627
+ # response includes a pagination token named NextToken. You can specify
8628
+ # this NextToken value in a subsequent call to ListProjectProfiles to
8629
+ # list the next set of project profiles.
8630
+ #
8631
+ # @option params [String] :sort_by
8632
+ # Specifies by what to sort project profiles.
8633
+ #
8634
+ # @option params [String] :sort_order
8635
+ # Specifies the sort order of the project profiles.
8636
+ #
8637
+ # @return [Types::ListProjectProfilesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8638
+ #
8639
+ # * {Types::ListProjectProfilesOutput#items #items} => Array&lt;Types::ProjectProfileSummary&gt;
8640
+ # * {Types::ListProjectProfilesOutput#next_token #next_token} => String
8641
+ #
8642
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
8643
+ #
8644
+ # @example Request syntax with placeholder values
8645
+ #
8646
+ # resp = client.list_project_profiles({
8647
+ # domain_identifier: "DomainId", # required
8648
+ # max_results: 1,
8649
+ # name: "ProjectProfileName",
8650
+ # next_token: "PaginationToken",
8651
+ # sort_by: "NAME", # accepts NAME
8652
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
8653
+ # })
8654
+ #
8655
+ # @example Response structure
8656
+ #
8657
+ # resp.items #=> Array
8658
+ # resp.items[0].created_at #=> Time
8659
+ # resp.items[0].created_by #=> String
8660
+ # resp.items[0].description #=> String
8661
+ # resp.items[0].domain_id #=> String
8662
+ # resp.items[0].domain_unit_id #=> String
8663
+ # resp.items[0].id #=> String
8664
+ # resp.items[0].last_updated_at #=> Time
8665
+ # resp.items[0].name #=> String
8666
+ # resp.items[0].status #=> String, one of "ENABLED", "DISABLED"
8667
+ # resp.next_token #=> String
8668
+ #
8669
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListProjectProfiles AWS API Documentation
8670
+ #
8671
+ # @overload list_project_profiles(params = {})
8672
+ # @param [Hash] params ({})
8673
+ def list_project_profiles(params = {}, options = {})
8674
+ req = build_request(:list_project_profiles, params)
8675
+ req.send_request(options)
8676
+ end
8677
+
7088
8678
  # Lists Amazon DataZone projects.
7089
8679
  #
7090
8680
  # @option params [required, String] :domain_identifier
@@ -7158,6 +8748,111 @@ module Aws::DataZone
7158
8748
  req.send_request(options)
7159
8749
  end
7160
8750
 
8751
+ # Lists existing rules. In Amazon DataZone, a rule is a formal agreement
8752
+ # that enforces specific requirements across user workflows (e.g.,
8753
+ # publishing assets to the catalog, requesting subscriptions, creating
8754
+ # projects) within the Amazon DataZone data portal. These rules help
8755
+ # maintain consistency, ensure compliance, and uphold governance
8756
+ # standards in data management processes. For instance, a metadata
8757
+ # enforcement rule can specify the required information for creating a
8758
+ # subscription request or publishing a data asset to the catalog,
8759
+ # ensuring alignment with organizational standards.
8760
+ #
8761
+ # @option params [String] :action
8762
+ # The action of the rule.
8763
+ #
8764
+ # @option params [Array<String>] :asset_types
8765
+ # The asset types of the rule.
8766
+ #
8767
+ # @option params [Boolean] :data_product
8768
+ # The data product of the rule.
8769
+ #
8770
+ # @option params [required, String] :domain_identifier
8771
+ # The ID of the domain in which the rules are to be listed.
8772
+ #
8773
+ # @option params [Boolean] :include_cascaded
8774
+ # Specifies whether to include cascading rules in the results.
8775
+ #
8776
+ # @option params [Integer] :max_results
8777
+ # The maximum number of rules to return in a single call to `ListRules`.
8778
+ # When the number of rules to be listed is greater than the value of
8779
+ # `MaxResults`, the response contains a `NextToken` value that you can
8780
+ # use in a subsequent call to `ListRules` to list the next set of rules.
8781
+ #
8782
+ # @option params [String] :next_token
8783
+ # When the number of rules is greater than the default value for the
8784
+ # `MaxResults` parameter, or if you explicitly specify a value for
8785
+ # `MaxResults` that is less than the number of rules, the response
8786
+ # includes a pagination token named `NextToken`. You can specify this
8787
+ # `NextToken` value in a subsequent call to `ListRules` to list the next
8788
+ # set of rules.
8789
+ #
8790
+ # @option params [Array<String>] :project_ids
8791
+ # The IDs of projects in which rules are to be listed.
8792
+ #
8793
+ # @option params [String] :rule_type
8794
+ # The type of the rule.
8795
+ #
8796
+ # @option params [required, String] :target_identifier
8797
+ # The target ID of the rule.
8798
+ #
8799
+ # @option params [required, String] :target_type
8800
+ # The target type of the rule.
8801
+ #
8802
+ # @return [Types::ListRulesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8803
+ #
8804
+ # * {Types::ListRulesOutput#items #items} => Array&lt;Types::RuleSummary&gt;
8805
+ # * {Types::ListRulesOutput#next_token #next_token} => String
8806
+ #
8807
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
8808
+ #
8809
+ # @example Request syntax with placeholder values
8810
+ #
8811
+ # resp = client.list_rules({
8812
+ # action: "CREATE_SUBSCRIPTION_REQUEST", # accepts CREATE_SUBSCRIPTION_REQUEST
8813
+ # asset_types: ["AssetTypeIdentifier"],
8814
+ # data_product: false,
8815
+ # domain_identifier: "DomainId", # required
8816
+ # include_cascaded: false,
8817
+ # max_results: 1,
8818
+ # next_token: "PaginationToken",
8819
+ # project_ids: ["ProjectId"],
8820
+ # rule_type: "METADATA_FORM_ENFORCEMENT", # accepts METADATA_FORM_ENFORCEMENT
8821
+ # target_identifier: "String", # required
8822
+ # target_type: "DOMAIN_UNIT", # required, accepts DOMAIN_UNIT
8823
+ # })
8824
+ #
8825
+ # @example Response structure
8826
+ #
8827
+ # resp.items #=> Array
8828
+ # resp.items[0].action #=> String, one of "CREATE_SUBSCRIPTION_REQUEST"
8829
+ # resp.items[0].identifier #=> String
8830
+ # resp.items[0].last_updated_by #=> String
8831
+ # resp.items[0].name #=> String
8832
+ # resp.items[0].revision #=> String
8833
+ # resp.items[0].rule_type #=> String, one of "METADATA_FORM_ENFORCEMENT"
8834
+ # resp.items[0].scope.asset_type.selection_mode #=> String, one of "ALL", "SPECIFIC"
8835
+ # resp.items[0].scope.asset_type.specific_asset_types #=> Array
8836
+ # resp.items[0].scope.asset_type.specific_asset_types[0] #=> String
8837
+ # resp.items[0].scope.data_product #=> Boolean
8838
+ # resp.items[0].scope.project.selection_mode #=> String, one of "ALL", "SPECIFIC"
8839
+ # resp.items[0].scope.project.specific_projects #=> Array
8840
+ # resp.items[0].scope.project.specific_projects[0] #=> String
8841
+ # resp.items[0].target.domain_unit_target.domain_unit_id #=> String
8842
+ # resp.items[0].target.domain_unit_target.include_child_domain_units #=> Boolean
8843
+ # resp.items[0].target_type #=> String, one of "DOMAIN_UNIT"
8844
+ # resp.items[0].updated_at #=> Time
8845
+ # resp.next_token #=> String
8846
+ #
8847
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListRules AWS API Documentation
8848
+ #
8849
+ # @overload list_rules(params = {})
8850
+ # @param [Hash] params ({})
8851
+ def list_rules(params = {}, options = {})
8852
+ req = build_request(:list_rules, params)
8853
+ req.send_request(options)
8854
+ end
8855
+
7161
8856
  # Lists subscription grants.
7162
8857
  #
7163
8858
  # @option params [required, String] :domain_identifier
@@ -7332,7 +9027,12 @@ module Aws::DataZone
7332
9027
  # resp.items[0].created_by #=> String
7333
9028
  # resp.items[0].decision_comment #=> String
7334
9029
  # resp.items[0].domain_id #=> String
9030
+ # resp.items[0].existing_subscription_id #=> String
7335
9031
  # resp.items[0].id #=> String
9032
+ # resp.items[0].metadata_forms_summary #=> Array
9033
+ # resp.items[0].metadata_forms_summary[0].form_name #=> String
9034
+ # resp.items[0].metadata_forms_summary[0].type_name #=> String
9035
+ # resp.items[0].metadata_forms_summary[0].type_revision #=> String
7336
9036
  # resp.items[0].request_reason #=> String
7337
9037
  # resp.items[0].reviewer_id #=> String
7338
9038
  # resp.items[0].status #=> String, one of "PENDING", "ACCEPTED", "REJECTED"
@@ -7713,7 +9413,10 @@ module Aws::DataZone
7713
9413
  # The data lineage event that you want to post. Only open-lineage run
7714
9414
  # event are supported as events.
7715
9415
  #
7716
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
9416
+ # @return [Types::PostLineageEventOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
9417
+ #
9418
+ # * {Types::PostLineageEventOutput#domain_id #domain_id} => String
9419
+ # * {Types::PostLineageEventOutput#id #id} => String
7717
9420
  #
7718
9421
  # @example Request syntax with placeholder values
7719
9422
  #
@@ -7723,6 +9426,11 @@ module Aws::DataZone
7723
9426
  # event: "data", # required
7724
9427
  # })
7725
9428
  #
9429
+ # @example Response structure
9430
+ #
9431
+ # resp.domain_id #=> String
9432
+ # resp.id #=> String
9433
+ #
7726
9434
  # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/PostLineageEvent AWS API Documentation
7727
9435
  #
7728
9436
  # @overload post_lineage_event(params = {})
@@ -7815,6 +9523,9 @@ module Aws::DataZone
7815
9523
  # @option params [required, String] :environment_blueprint_identifier
7816
9524
  # The identifier of the environment blueprint.
7817
9525
  #
9526
+ # @option params [String] :environment_role_permission_boundary
9527
+ # The environment role permissions boundary.
9528
+ #
7818
9529
  # @option params [String] :manage_access_role_arn
7819
9530
  # The ARN of the manage access role.
7820
9531
  #
@@ -7833,6 +9544,7 @@ module Aws::DataZone
7833
9544
  # * {Types::PutEnvironmentBlueprintConfigurationOutput#domain_id #domain_id} => String
7834
9545
  # * {Types::PutEnvironmentBlueprintConfigurationOutput#enabled_regions #enabled_regions} => Array&lt;String&gt;
7835
9546
  # * {Types::PutEnvironmentBlueprintConfigurationOutput#environment_blueprint_id #environment_blueprint_id} => String
9547
+ # * {Types::PutEnvironmentBlueprintConfigurationOutput#environment_role_permission_boundary #environment_role_permission_boundary} => String
7836
9548
  # * {Types::PutEnvironmentBlueprintConfigurationOutput#manage_access_role_arn #manage_access_role_arn} => String
7837
9549
  # * {Types::PutEnvironmentBlueprintConfigurationOutput#provisioning_configurations #provisioning_configurations} => Array&lt;Types::ProvisioningConfiguration&gt;
7838
9550
  # * {Types::PutEnvironmentBlueprintConfigurationOutput#provisioning_role_arn #provisioning_role_arn} => String
@@ -7845,6 +9557,7 @@ module Aws::DataZone
7845
9557
  # domain_identifier: "DomainId", # required
7846
9558
  # enabled_regions: ["RegionName"], # required
7847
9559
  # environment_blueprint_identifier: "EnvironmentBlueprintId", # required
9560
+ # environment_role_permission_boundary: "PolicyArn",
7848
9561
  # manage_access_role_arn: "RoleArn",
7849
9562
  # provisioning_configurations: [
7850
9563
  # {
@@ -7869,6 +9582,7 @@ module Aws::DataZone
7869
9582
  # resp.enabled_regions #=> Array
7870
9583
  # resp.enabled_regions[0] #=> String
7871
9584
  # resp.environment_blueprint_id #=> String
9585
+ # resp.environment_role_permission_boundary #=> String
7872
9586
  # resp.manage_access_role_arn #=> String
7873
9587
  # resp.provisioning_configurations #=> Array
7874
9588
  # resp.provisioning_configurations[0].lake_formation_configuration.location_registration_exclude_s3_locations #=> Array
@@ -7975,7 +9689,9 @@ module Aws::DataZone
7975
9689
  # * {Types::RejectSubscriptionRequestOutput#created_by #created_by} => String
7976
9690
  # * {Types::RejectSubscriptionRequestOutput#decision_comment #decision_comment} => String
7977
9691
  # * {Types::RejectSubscriptionRequestOutput#domain_id #domain_id} => String
9692
+ # * {Types::RejectSubscriptionRequestOutput#existing_subscription_id #existing_subscription_id} => String
7978
9693
  # * {Types::RejectSubscriptionRequestOutput#id #id} => String
9694
+ # * {Types::RejectSubscriptionRequestOutput#metadata_forms #metadata_forms} => Array&lt;Types::FormOutput&gt;
7979
9695
  # * {Types::RejectSubscriptionRequestOutput#request_reason #request_reason} => String
7980
9696
  # * {Types::RejectSubscriptionRequestOutput#reviewer_id #reviewer_id} => String
7981
9697
  # * {Types::RejectSubscriptionRequestOutput#status #status} => String
@@ -7998,7 +9714,13 @@ module Aws::DataZone
7998
9714
  # resp.created_by #=> String
7999
9715
  # resp.decision_comment #=> String
8000
9716
  # resp.domain_id #=> String
9717
+ # resp.existing_subscription_id #=> String
8001
9718
  # resp.id #=> String
9719
+ # resp.metadata_forms #=> Array
9720
+ # resp.metadata_forms[0].content #=> String
9721
+ # resp.metadata_forms[0].form_name #=> String
9722
+ # resp.metadata_forms[0].type_name #=> String
9723
+ # resp.metadata_forms[0].type_revision #=> String
8002
9724
  # resp.request_reason #=> String
8003
9725
  # resp.reviewer_id #=> String
8004
9726
  # resp.status #=> String, one of "PENDING", "ACCEPTED", "REJECTED"
@@ -8129,7 +9851,7 @@ module Aws::DataZone
8129
9851
  # domain_identifier: "DomainId", # required
8130
9852
  # entity_identifier: "String", # required
8131
9853
  # entity_type: "DOMAIN_UNIT", # required, accepts DOMAIN_UNIT, ENVIRONMENT_BLUEPRINT_CONFIGURATION, ENVIRONMENT_PROFILE
8132
- # policy_type: "CREATE_DOMAIN_UNIT", # required, accepts CREATE_DOMAIN_UNIT, OVERRIDE_DOMAIN_UNIT_OWNERS, ADD_TO_PROJECT_MEMBER_POOL, OVERRIDE_PROJECT_OWNERS, CREATE_GLOSSARY, CREATE_FORM_TYPE, CREATE_ASSET_TYPE, CREATE_PROJECT, CREATE_ENVIRONMENT_PROFILE, DELEGATE_CREATE_ENVIRONMENT_PROFILE, CREATE_ENVIRONMENT
9854
+ # policy_type: "CREATE_DOMAIN_UNIT", # required, accepts CREATE_DOMAIN_UNIT, OVERRIDE_DOMAIN_UNIT_OWNERS, ADD_TO_PROJECT_MEMBER_POOL, OVERRIDE_PROJECT_OWNERS, CREATE_GLOSSARY, CREATE_FORM_TYPE, CREATE_ASSET_TYPE, CREATE_PROJECT, CREATE_ENVIRONMENT_PROFILE, DELEGATE_CREATE_ENVIRONMENT_PROFILE, CREATE_ENVIRONMENT, CREATE_ENVIRONMENT_FROM_BLUEPRINT, CREATE_PROJECT_FROM_PROJECT_PROFILE
8133
9855
  # principal: { # required
8134
9856
  # domain_unit: {
8135
9857
  # domain_unit_designation: "OWNER", # required, accepts OWNER
@@ -9182,6 +10904,220 @@ module Aws::DataZone
9182
10904
  req.send_request(options)
9183
10905
  end
9184
10906
 
10907
+ # Updates a connection. In Amazon DataZone, a connection enables you to
10908
+ # connect your resources (domains, projects, and environments) to
10909
+ # external resources and services.
10910
+ #
10911
+ # @option params [Types::AwsLocation] :aws_location
10912
+ # The location where a connection is to be updated.
10913
+ #
10914
+ # @option params [String] :description
10915
+ # The description of a connection.
10916
+ #
10917
+ # @option params [required, String] :domain_identifier
10918
+ # The ID of the domain where a connection is to be updated.
10919
+ #
10920
+ # @option params [required, String] :identifier
10921
+ # The ID of the connection to be updated.
10922
+ #
10923
+ # @option params [Types::ConnectionPropertiesPatch] :props
10924
+ # The connection props.
10925
+ #
10926
+ # @return [Types::UpdateConnectionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10927
+ #
10928
+ # * {Types::UpdateConnectionOutput#connection_id #connection_id} => String
10929
+ # * {Types::UpdateConnectionOutput#description #description} => String
10930
+ # * {Types::UpdateConnectionOutput#domain_id #domain_id} => String
10931
+ # * {Types::UpdateConnectionOutput#domain_unit_id #domain_unit_id} => String
10932
+ # * {Types::UpdateConnectionOutput#environment_id #environment_id} => String
10933
+ # * {Types::UpdateConnectionOutput#name #name} => String
10934
+ # * {Types::UpdateConnectionOutput#physical_endpoints #physical_endpoints} => Array&lt;Types::PhysicalEndpoint&gt;
10935
+ # * {Types::UpdateConnectionOutput#project_id #project_id} => String
10936
+ # * {Types::UpdateConnectionOutput#props #props} => Types::ConnectionPropertiesOutput
10937
+ # * {Types::UpdateConnectionOutput#type #type} => String
10938
+ #
10939
+ # @example Request syntax with placeholder values
10940
+ #
10941
+ # resp = client.update_connection({
10942
+ # aws_location: {
10943
+ # access_role: "AwsLocationAccessRoleString",
10944
+ # aws_account_id: "AwsAccountId",
10945
+ # aws_region: "AwsRegion",
10946
+ # iam_connection_id: "ConnectionId",
10947
+ # },
10948
+ # description: "UpdateConnectionInputDescriptionString",
10949
+ # domain_identifier: "DomainId", # required
10950
+ # identifier: "ConnectionId", # required
10951
+ # props: {
10952
+ # athena_properties: {
10953
+ # workgroup_name: "AthenaPropertiesPatchWorkgroupNameString",
10954
+ # },
10955
+ # glue_properties: {
10956
+ # glue_connection_input: {
10957
+ # authentication_configuration: {
10958
+ # basic_authentication_credentials: {
10959
+ # password: "BasicAuthenticationCredentialsPasswordString",
10960
+ # user_name: "BasicAuthenticationCredentialsUserNameString",
10961
+ # },
10962
+ # secret_arn: "AuthenticationConfigurationPatchSecretArnString",
10963
+ # },
10964
+ # connection_properties: {
10965
+ # "String" => "ConnectionPropertiesValueString",
10966
+ # },
10967
+ # description: "String",
10968
+ # },
10969
+ # },
10970
+ # iam_properties: {
10971
+ # glue_lineage_sync_enabled: false,
10972
+ # },
10973
+ # redshift_properties: {
10974
+ # credentials: {
10975
+ # secret_arn: "RedshiftCredentialsSecretArnString",
10976
+ # username_password: {
10977
+ # password: "Password", # required
10978
+ # username: "Username", # required
10979
+ # },
10980
+ # },
10981
+ # database_name: "RedshiftPropertiesPatchDatabaseNameString",
10982
+ # host: "RedshiftPropertiesPatchHostString",
10983
+ # lineage_sync: {
10984
+ # enabled: false,
10985
+ # schedule: {
10986
+ # schedule: "LineageSyncScheduleScheduleString",
10987
+ # },
10988
+ # },
10989
+ # port: 1,
10990
+ # storage: {
10991
+ # cluster_name: "RedshiftStoragePropertiesClusterNameString",
10992
+ # workgroup_name: "RedshiftStoragePropertiesWorkgroupNameString",
10993
+ # },
10994
+ # },
10995
+ # spark_emr_properties: {
10996
+ # compute_arn: "SparkEmrPropertiesPatchComputeArnString",
10997
+ # instance_profile_arn: "SparkEmrPropertiesPatchInstanceProfileArnString",
10998
+ # java_virtual_env: "SparkEmrPropertiesPatchJavaVirtualEnvString",
10999
+ # log_uri: "SparkEmrPropertiesPatchLogUriString",
11000
+ # python_virtual_env: "SparkEmrPropertiesPatchPythonVirtualEnvString",
11001
+ # runtime_role: "SparkEmrPropertiesPatchRuntimeRoleString",
11002
+ # trusted_certificates_s3_uri: "SparkEmrPropertiesPatchTrustedCertificatesS3UriString",
11003
+ # },
11004
+ # },
11005
+ # })
11006
+ #
11007
+ # @example Response structure
11008
+ #
11009
+ # resp.connection_id #=> String
11010
+ # resp.description #=> String
11011
+ # resp.domain_id #=> String
11012
+ # resp.domain_unit_id #=> String
11013
+ # resp.environment_id #=> String
11014
+ # resp.name #=> String
11015
+ # resp.physical_endpoints #=> Array
11016
+ # resp.physical_endpoints[0].aws_location.access_role #=> String
11017
+ # resp.physical_endpoints[0].aws_location.aws_account_id #=> String
11018
+ # resp.physical_endpoints[0].aws_location.aws_region #=> String
11019
+ # resp.physical_endpoints[0].aws_location.iam_connection_id #=> String
11020
+ # resp.physical_endpoints[0].glue_connection.athena_properties #=> Hash
11021
+ # resp.physical_endpoints[0].glue_connection.athena_properties["PropertyMapKeyString"] #=> String
11022
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.authentication_type #=> String, one of "BASIC", "OAUTH2", "CUSTOM"
11023
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.authorization_code_properties.authorization_code #=> String
11024
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.authorization_code_properties.redirect_uri #=> String
11025
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_client_application.a_ws_managed_client_application_reference #=> String
11026
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_client_application.user_managed_client_application_client_id #=> String
11027
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_credentials.access_token #=> String
11028
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_credentials.jwt_token #=> String
11029
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_credentials.refresh_token #=> String
11030
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_credentials.user_managed_client_application_client_secret #=> String
11031
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.o_auth_2_grant_type #=> String, one of "AUTHORIZATION_CODE", "CLIENT_CREDENTIALS", "JWT_BEARER"
11032
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.token_url #=> String
11033
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.token_url_parameters_map #=> Hash
11034
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.o_auth_2_properties.token_url_parameters_map["TokenUrlParametersMapKeyString"] #=> String
11035
+ # resp.physical_endpoints[0].glue_connection.authentication_configuration.secret_arn #=> String
11036
+ # resp.physical_endpoints[0].glue_connection.compatible_compute_environments #=> Array
11037
+ # resp.physical_endpoints[0].glue_connection.compatible_compute_environments[0] #=> String, one of "SPARK", "ATHENA", "PYTHON"
11038
+ # resp.physical_endpoints[0].glue_connection.connection_properties #=> Hash
11039
+ # resp.physical_endpoints[0].glue_connection.connection_properties["String"] #=> String
11040
+ # resp.physical_endpoints[0].glue_connection.connection_schema_version #=> Integer
11041
+ # resp.physical_endpoints[0].glue_connection.connection_type #=> String, one of "ATHENA", "BIGQUERY", "DATABRICKS", "DOCUMENTDB", "DYNAMODB", "HYPERPOD", "IAM", "MYSQL", "OPENSEARCH", "ORACLE", "POSTGRESQL", "REDSHIFT", "SAPHANA", "SNOWFLAKE", "SPARK", "SQLSERVER", "TERADATA", "VERTICA", "WORKFLOWS_MWAA"
11042
+ # resp.physical_endpoints[0].glue_connection.creation_time #=> Time
11043
+ # resp.physical_endpoints[0].glue_connection.description #=> String
11044
+ # resp.physical_endpoints[0].glue_connection.last_connection_validation_time #=> Time
11045
+ # resp.physical_endpoints[0].glue_connection.last_updated_by #=> String
11046
+ # resp.physical_endpoints[0].glue_connection.last_updated_time #=> Time
11047
+ # resp.physical_endpoints[0].glue_connection.match_criteria #=> Array
11048
+ # resp.physical_endpoints[0].glue_connection.match_criteria[0] #=> String
11049
+ # resp.physical_endpoints[0].glue_connection.name #=> String
11050
+ # resp.physical_endpoints[0].glue_connection.physical_connection_requirements.availability_zone #=> String
11051
+ # resp.physical_endpoints[0].glue_connection.physical_connection_requirements.security_group_id_list #=> Array
11052
+ # resp.physical_endpoints[0].glue_connection.physical_connection_requirements.security_group_id_list[0] #=> String
11053
+ # resp.physical_endpoints[0].glue_connection.physical_connection_requirements.subnet_id #=> String
11054
+ # resp.physical_endpoints[0].glue_connection.physical_connection_requirements.subnet_id_list #=> Array
11055
+ # resp.physical_endpoints[0].glue_connection.physical_connection_requirements.subnet_id_list[0] #=> String
11056
+ # resp.physical_endpoints[0].glue_connection.python_properties #=> Hash
11057
+ # resp.physical_endpoints[0].glue_connection.python_properties["PropertyMapKeyString"] #=> String
11058
+ # resp.physical_endpoints[0].glue_connection.spark_properties #=> Hash
11059
+ # resp.physical_endpoints[0].glue_connection.spark_properties["PropertyMapKeyString"] #=> String
11060
+ # resp.physical_endpoints[0].glue_connection.status #=> String, one of "CREATING", "CREATE_FAILED", "DELETING", "DELETE_FAILED", "READY", "UPDATING", "UPDATE_FAILED", "DELETED"
11061
+ # resp.physical_endpoints[0].glue_connection.status_reason #=> String
11062
+ # resp.physical_endpoints[0].glue_connection_name #=> String
11063
+ # resp.physical_endpoints[0].host #=> String
11064
+ # resp.physical_endpoints[0].port #=> Integer
11065
+ # resp.physical_endpoints[0].protocol #=> String, one of "ATHENA", "GLUE_INTERACTIVE_SESSION", "HTTPS", "JDBC", "LIVY", "ODBC", "PRISM"
11066
+ # resp.physical_endpoints[0].stage #=> String
11067
+ # resp.project_id #=> String
11068
+ # resp.props.athena_properties.workgroup_name #=> String
11069
+ # resp.props.glue_properties.error_message #=> String
11070
+ # resp.props.glue_properties.status #=> String, one of "CREATING", "CREATE_FAILED", "DELETING", "DELETE_FAILED", "READY", "UPDATING", "UPDATE_FAILED", "DELETED"
11071
+ # resp.props.hyper_pod_properties.cluster_arn #=> String
11072
+ # resp.props.hyper_pod_properties.cluster_name #=> String
11073
+ # resp.props.hyper_pod_properties.orchestrator #=> String, one of "EKS", "SLURM"
11074
+ # resp.props.iam_properties.environment_id #=> String
11075
+ # resp.props.iam_properties.glue_lineage_sync_enabled #=> Boolean
11076
+ # resp.props.redshift_properties.credentials.secret_arn #=> String
11077
+ # resp.props.redshift_properties.credentials.username_password.password #=> String
11078
+ # resp.props.redshift_properties.credentials.username_password.username #=> String
11079
+ # resp.props.redshift_properties.database_name #=> String
11080
+ # resp.props.redshift_properties.is_provisioned_secret #=> Boolean
11081
+ # resp.props.redshift_properties.jdbc_iam_url #=> String
11082
+ # resp.props.redshift_properties.jdbc_url #=> String
11083
+ # resp.props.redshift_properties.lineage_sync.enabled #=> Boolean
11084
+ # resp.props.redshift_properties.lineage_sync.lineage_job_id #=> String
11085
+ # resp.props.redshift_properties.lineage_sync.schedule.schedule #=> String
11086
+ # resp.props.redshift_properties.redshift_temp_dir #=> String
11087
+ # resp.props.redshift_properties.status #=> String, one of "CREATING", "CREATE_FAILED", "DELETING", "DELETE_FAILED", "READY", "UPDATING", "UPDATE_FAILED", "DELETED"
11088
+ # resp.props.redshift_properties.storage.cluster_name #=> String
11089
+ # resp.props.redshift_properties.storage.workgroup_name #=> String
11090
+ # resp.props.spark_emr_properties.compute_arn #=> String
11091
+ # resp.props.spark_emr_properties.credentials.password #=> String
11092
+ # resp.props.spark_emr_properties.credentials.username #=> String
11093
+ # resp.props.spark_emr_properties.credentials_expiration #=> Time
11094
+ # resp.props.spark_emr_properties.governance_type #=> String, one of "AWS_MANAGED", "USER_MANAGED"
11095
+ # resp.props.spark_emr_properties.instance_profile_arn #=> String
11096
+ # resp.props.spark_emr_properties.java_virtual_env #=> String
11097
+ # resp.props.spark_emr_properties.livy_endpoint #=> String
11098
+ # resp.props.spark_emr_properties.log_uri #=> String
11099
+ # resp.props.spark_emr_properties.python_virtual_env #=> String
11100
+ # resp.props.spark_emr_properties.runtime_role #=> String
11101
+ # resp.props.spark_emr_properties.trusted_certificates_s3_uri #=> String
11102
+ # resp.props.spark_glue_properties.additional_args.connection #=> String
11103
+ # resp.props.spark_glue_properties.glue_connection_name #=> String
11104
+ # resp.props.spark_glue_properties.glue_version #=> String
11105
+ # resp.props.spark_glue_properties.idle_timeout #=> Integer
11106
+ # resp.props.spark_glue_properties.java_virtual_env #=> String
11107
+ # resp.props.spark_glue_properties.number_of_workers #=> Integer
11108
+ # resp.props.spark_glue_properties.python_virtual_env #=> String
11109
+ # resp.props.spark_glue_properties.worker_type #=> String
11110
+ # resp.type #=> String, one of "ATHENA", "BIGQUERY", "DATABRICKS", "DOCUMENTDB", "DYNAMODB", "HYPERPOD", "IAM", "MYSQL", "OPENSEARCH", "ORACLE", "POSTGRESQL", "REDSHIFT", "SAPHANA", "SNOWFLAKE", "SPARK", "SQLSERVER", "TERADATA", "VERTICA", "WORKFLOWS_MWAA"
11111
+ #
11112
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateConnection AWS API Documentation
11113
+ #
11114
+ # @overload update_connection(params = {})
11115
+ # @param [Hash] params ({})
11116
+ def update_connection(params = {}, options = {})
11117
+ req = build_request(:update_connection, params)
11118
+ req.send_request(options)
11119
+ end
11120
+
9185
11121
  # Updates the specified data source in Amazon DataZone.
9186
11122
  #
9187
11123
  # @option params [Array<Types::FormInput>] :asset_forms_input
@@ -9228,6 +11164,7 @@ module Aws::DataZone
9228
11164
  #
9229
11165
  # * {Types::UpdateDataSourceOutput#asset_forms_output #asset_forms_output} => Array&lt;Types::FormOutput&gt;
9230
11166
  # * {Types::UpdateDataSourceOutput#configuration #configuration} => Types::DataSourceConfigurationOutput
11167
+ # * {Types::UpdateDataSourceOutput#connection_id #connection_id} => String
9231
11168
  # * {Types::UpdateDataSourceOutput#created_at #created_at} => Time
9232
11169
  # * {Types::UpdateDataSourceOutput#description #description} => String
9233
11170
  # * {Types::UpdateDataSourceOutput#domain_id #domain_id} => String
@@ -9257,12 +11194,13 @@ module Aws::DataZone
9257
11194
  # content: "FormInputContentString",
9258
11195
  # form_name: "FormName", # required
9259
11196
  # type_identifier: "FormTypeIdentifier",
9260
- # type_revision: "Revision",
11197
+ # type_revision: "RevisionInput",
9261
11198
  # },
9262
11199
  # ],
9263
11200
  # configuration: {
9264
11201
  # glue_run_configuration: {
9265
11202
  # auto_import_data_quality_result: false,
11203
+ # catalog_name: "GlueRunConfigurationInputCatalogNameString",
9266
11204
  # data_access_role: "GlueRunConfigurationInputDataAccessRoleString",
9267
11205
  # relational_filter_configurations: [ # required
9268
11206
  # {
@@ -9279,10 +11217,10 @@ module Aws::DataZone
9279
11217
  # },
9280
11218
  # redshift_run_configuration: {
9281
11219
  # data_access_role: "RedshiftRunConfigurationInputDataAccessRoleString",
9282
- # redshift_credential_configuration: { # required
11220
+ # redshift_credential_configuration: {
9283
11221
  # secret_manager_arn: "RedshiftCredentialConfigurationSecretManagerArnString", # required
9284
11222
  # },
9285
- # redshift_storage: { # required
11223
+ # redshift_storage: {
9286
11224
  # redshift_cluster_source: {
9287
11225
  # cluster_name: "RedshiftClusterStorageClusterNameString", # required
9288
11226
  # },
@@ -9303,6 +11241,11 @@ module Aws::DataZone
9303
11241
  # },
9304
11242
  # ],
9305
11243
  # },
11244
+ # sage_maker_run_configuration: {
11245
+ # tracking_assets: { # required
11246
+ # "SageMakerAssetType" => ["SageMakerResourceArn"],
11247
+ # },
11248
+ # },
9306
11249
  # },
9307
11250
  # description: "Description",
9308
11251
  # domain_identifier: "DomainId", # required
@@ -9329,6 +11272,7 @@ module Aws::DataZone
9329
11272
  # resp.asset_forms_output[0].type_revision #=> String
9330
11273
  # resp.configuration.glue_run_configuration.account_id #=> String
9331
11274
  # resp.configuration.glue_run_configuration.auto_import_data_quality_result #=> Boolean
11275
+ # resp.configuration.glue_run_configuration.catalog_name #=> String
9332
11276
  # resp.configuration.glue_run_configuration.data_access_role #=> String
9333
11277
  # resp.configuration.glue_run_configuration.region #=> String
9334
11278
  # resp.configuration.glue_run_configuration.relational_filter_configurations #=> Array
@@ -9349,6 +11293,12 @@ module Aws::DataZone
9349
11293
  # resp.configuration.redshift_run_configuration.relational_filter_configurations[0].filter_expressions[0].expression #=> String
9350
11294
  # resp.configuration.redshift_run_configuration.relational_filter_configurations[0].filter_expressions[0].type #=> String, one of "INCLUDE", "EXCLUDE"
9351
11295
  # resp.configuration.redshift_run_configuration.relational_filter_configurations[0].schema_name #=> String
11296
+ # resp.configuration.sage_maker_run_configuration.account_id #=> String
11297
+ # resp.configuration.sage_maker_run_configuration.region #=> String
11298
+ # resp.configuration.sage_maker_run_configuration.tracking_assets #=> Hash
11299
+ # resp.configuration.sage_maker_run_configuration.tracking_assets["SageMakerAssetType"] #=> Array
11300
+ # resp.configuration.sage_maker_run_configuration.tracking_assets["SageMakerAssetType"][0] #=> String
11301
+ # resp.connection_id #=> String
9352
11302
  # resp.created_at #=> Time
9353
11303
  # resp.description #=> String
9354
11304
  # resp.domain_id #=> String
@@ -9413,6 +11363,9 @@ module Aws::DataZone
9413
11363
  # @option params [String] :name
9414
11364
  # The name to be updated as part of the `UpdateDomain` action.
9415
11365
  #
11366
+ # @option params [String] :service_role
11367
+ # The service role of the domain.
11368
+ #
9416
11369
  # @option params [Types::SingleSignOn] :single_sign_on
9417
11370
  # The single sign-on option to be updated as part of the `UpdateDomain`
9418
11371
  # action.
@@ -9425,6 +11378,7 @@ module Aws::DataZone
9425
11378
  # * {Types::UpdateDomainOutput#last_updated_at #last_updated_at} => Time
9426
11379
  # * {Types::UpdateDomainOutput#name #name} => String
9427
11380
  # * {Types::UpdateDomainOutput#root_domain_unit_id #root_domain_unit_id} => String
11381
+ # * {Types::UpdateDomainOutput#service_role #service_role} => String
9428
11382
  # * {Types::UpdateDomainOutput#single_sign_on #single_sign_on} => Types::SingleSignOn
9429
11383
  #
9430
11384
  # @example Request syntax with placeholder values
@@ -9435,6 +11389,7 @@ module Aws::DataZone
9435
11389
  # domain_execution_role: "RoleArn",
9436
11390
  # identifier: "DomainId", # required
9437
11391
  # name: "String",
11392
+ # service_role: "RoleArn",
9438
11393
  # single_sign_on: {
9439
11394
  # type: "IAM_IDC", # accepts IAM_IDC, DISABLED
9440
11395
  # user_assignment: "AUTOMATIC", # accepts AUTOMATIC, MANUAL
@@ -9449,6 +11404,7 @@ module Aws::DataZone
9449
11404
  # resp.last_updated_at #=> Time
9450
11405
  # resp.name #=> String
9451
11406
  # resp.root_domain_unit_id #=> String
11407
+ # resp.service_role #=> String
9452
11408
  # resp.single_sign_on.type #=> String, one of "IAM_IDC", "DISABLED"
9453
11409
  # resp.single_sign_on.user_assignment #=> String, one of "AUTOMATIC", "MANUAL"
9454
11410
  #
@@ -9980,6 +11936,9 @@ module Aws::DataZone
9980
11936
  # @option params [required, String] :domain_identifier
9981
11937
  # The ID of the Amazon DataZone domain where a project is being updated.
9982
11938
  #
11939
+ # @option params [Types::EnvironmentDeploymentDetails] :environment_deployment_details
11940
+ # The environment deployment details of the project.
11941
+ #
9983
11942
  # @option params [Array<String>] :glossary_terms
9984
11943
  # The glossary terms to be updated as part of the `UpdateProject`
9985
11944
  # action.
@@ -9997,18 +11956,32 @@ module Aws::DataZone
9997
11956
  # * {Types::UpdateProjectOutput#description #description} => String
9998
11957
  # * {Types::UpdateProjectOutput#domain_id #domain_id} => String
9999
11958
  # * {Types::UpdateProjectOutput#domain_unit_id #domain_unit_id} => String
11959
+ # * {Types::UpdateProjectOutput#environment_deployment_details #environment_deployment_details} => Types::EnvironmentDeploymentDetails
10000
11960
  # * {Types::UpdateProjectOutput#failure_reasons #failure_reasons} => Array&lt;Types::ProjectDeletionError&gt;
10001
11961
  # * {Types::UpdateProjectOutput#glossary_terms #glossary_terms} => Array&lt;String&gt;
10002
11962
  # * {Types::UpdateProjectOutput#id #id} => String
10003
11963
  # * {Types::UpdateProjectOutput#last_updated_at #last_updated_at} => Time
10004
11964
  # * {Types::UpdateProjectOutput#name #name} => String
11965
+ # * {Types::UpdateProjectOutput#project_profile_id #project_profile_id} => String
10005
11966
  # * {Types::UpdateProjectOutput#project_status #project_status} => String
11967
+ # * {Types::UpdateProjectOutput#user_parameters #user_parameters} => Array&lt;Types::EnvironmentConfigurationUserParameter&gt;
10006
11968
  #
10007
11969
  # @example Request syntax with placeholder values
10008
11970
  #
10009
11971
  # resp = client.update_project({
10010
11972
  # description: "Description",
10011
11973
  # domain_identifier: "DomainId", # required
11974
+ # environment_deployment_details: {
11975
+ # environment_failure_reasons: {
11976
+ # "String" => [
11977
+ # {
11978
+ # code: "String",
11979
+ # message: "String", # required
11980
+ # },
11981
+ # ],
11982
+ # },
11983
+ # overall_deployment_status: "PENDING_DEPLOYMENT", # accepts PENDING_DEPLOYMENT, IN_PROGRESS, SUCCESSFUL, FAILED_VALIDATION, FAILED_DEPLOYMENT
11984
+ # },
10012
11985
  # glossary_terms: ["GlossaryTermId"],
10013
11986
  # identifier: "ProjectId", # required
10014
11987
  # name: "ProjectName",
@@ -10021,6 +11994,11 @@ module Aws::DataZone
10021
11994
  # resp.description #=> String
10022
11995
  # resp.domain_id #=> String
10023
11996
  # resp.domain_unit_id #=> String
11997
+ # resp.environment_deployment_details.environment_failure_reasons #=> Hash
11998
+ # resp.environment_deployment_details.environment_failure_reasons["String"] #=> Array
11999
+ # resp.environment_deployment_details.environment_failure_reasons["String"][0].code #=> String
12000
+ # resp.environment_deployment_details.environment_failure_reasons["String"][0].message #=> String
12001
+ # resp.environment_deployment_details.overall_deployment_status #=> String, one of "PENDING_DEPLOYMENT", "IN_PROGRESS", "SUCCESSFUL", "FAILED_VALIDATION", "FAILED_DEPLOYMENT"
10024
12002
  # resp.failure_reasons #=> Array
10025
12003
  # resp.failure_reasons[0].code #=> String
10026
12004
  # resp.failure_reasons[0].message #=> String
@@ -10029,7 +12007,13 @@ module Aws::DataZone
10029
12007
  # resp.id #=> String
10030
12008
  # resp.last_updated_at #=> Time
10031
12009
  # resp.name #=> String
12010
+ # resp.project_profile_id #=> String
10032
12011
  # resp.project_status #=> String, one of "ACTIVE", "DELETING", "DELETE_FAILED"
12012
+ # resp.user_parameters #=> Array
12013
+ # resp.user_parameters[0].environment_configuration_name #=> String
12014
+ # resp.user_parameters[0].environment_parameters #=> Array
12015
+ # resp.user_parameters[0].environment_parameters[0].name #=> String
12016
+ # resp.user_parameters[0].environment_parameters[0].value #=> String
10033
12017
  #
10034
12018
  # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateProject AWS API Documentation
10035
12019
  #
@@ -10040,6 +12024,241 @@ module Aws::DataZone
10040
12024
  req.send_request(options)
10041
12025
  end
10042
12026
 
12027
+ # Updates a project profile.
12028
+ #
12029
+ # @option params [String] :description
12030
+ # The description of a project profile.
12031
+ #
12032
+ # @option params [required, String] :domain_identifier
12033
+ # The ID of the domain where a project profile is to be updated.
12034
+ #
12035
+ # @option params [String] :domain_unit_identifier
12036
+ # The ID of the domain unit where a project profile is to be updated.
12037
+ #
12038
+ # @option params [Array<Types::EnvironmentConfiguration>] :environment_configurations
12039
+ # The environment configurations of a project profile.
12040
+ #
12041
+ # @option params [required, String] :identifier
12042
+ # The ID of a project profile that is to be updated.
12043
+ #
12044
+ # @option params [String] :name
12045
+ # The name of a project profile.
12046
+ #
12047
+ # @option params [String] :status
12048
+ # The status of a project profile.
12049
+ #
12050
+ # @return [Types::UpdateProjectProfileOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
12051
+ #
12052
+ # * {Types::UpdateProjectProfileOutput#created_at #created_at} => Time
12053
+ # * {Types::UpdateProjectProfileOutput#created_by #created_by} => String
12054
+ # * {Types::UpdateProjectProfileOutput#description #description} => String
12055
+ # * {Types::UpdateProjectProfileOutput#domain_id #domain_id} => String
12056
+ # * {Types::UpdateProjectProfileOutput#domain_unit_id #domain_unit_id} => String
12057
+ # * {Types::UpdateProjectProfileOutput#environment_configurations #environment_configurations} => Array&lt;Types::EnvironmentConfiguration&gt;
12058
+ # * {Types::UpdateProjectProfileOutput#id #id} => String
12059
+ # * {Types::UpdateProjectProfileOutput#last_updated_at #last_updated_at} => Time
12060
+ # * {Types::UpdateProjectProfileOutput#name #name} => String
12061
+ # * {Types::UpdateProjectProfileOutput#status #status} => String
12062
+ #
12063
+ # @example Request syntax with placeholder values
12064
+ #
12065
+ # resp = client.update_project_profile({
12066
+ # description: "Description",
12067
+ # domain_identifier: "DomainId", # required
12068
+ # domain_unit_identifier: "DomainUnitId",
12069
+ # environment_configurations: [
12070
+ # {
12071
+ # aws_account: { # required
12072
+ # aws_account_id: "AwsAccountId",
12073
+ # aws_account_id_path: "ParameterStorePath",
12074
+ # },
12075
+ # aws_region: { # required
12076
+ # region_name: "RegionName",
12077
+ # region_name_path: "ParameterStorePath",
12078
+ # },
12079
+ # configuration_parameters: {
12080
+ # parameter_overrides: [
12081
+ # {
12082
+ # is_editable: false,
12083
+ # name: "EnvironmentConfigurationParameterName",
12084
+ # value: "String",
12085
+ # },
12086
+ # ],
12087
+ # resolved_parameters: [
12088
+ # {
12089
+ # is_editable: false,
12090
+ # name: "EnvironmentConfigurationParameterName",
12091
+ # value: "String",
12092
+ # },
12093
+ # ],
12094
+ # ssm_path: "ParameterStorePath",
12095
+ # },
12096
+ # deployment_mode: "ON_CREATE", # accepts ON_CREATE, ON_DEMAND
12097
+ # deployment_order: 1,
12098
+ # description: "Description",
12099
+ # environment_blueprint_id: "EnvironmentBlueprintId", # required
12100
+ # id: "EnvironmentConfigurationId",
12101
+ # name: "EnvironmentConfigurationName", # required
12102
+ # },
12103
+ # ],
12104
+ # identifier: "ProjectProfileId", # required
12105
+ # name: "ProjectProfileName",
12106
+ # status: "ENABLED", # accepts ENABLED, DISABLED
12107
+ # })
12108
+ #
12109
+ # @example Response structure
12110
+ #
12111
+ # resp.created_at #=> Time
12112
+ # resp.created_by #=> String
12113
+ # resp.description #=> String
12114
+ # resp.domain_id #=> String
12115
+ # resp.domain_unit_id #=> String
12116
+ # resp.environment_configurations #=> Array
12117
+ # resp.environment_configurations[0].aws_account.aws_account_id #=> String
12118
+ # resp.environment_configurations[0].aws_account.aws_account_id_path #=> String
12119
+ # resp.environment_configurations[0].aws_region.region_name #=> String
12120
+ # resp.environment_configurations[0].aws_region.region_name_path #=> String
12121
+ # resp.environment_configurations[0].configuration_parameters.parameter_overrides #=> Array
12122
+ # resp.environment_configurations[0].configuration_parameters.parameter_overrides[0].is_editable #=> Boolean
12123
+ # resp.environment_configurations[0].configuration_parameters.parameter_overrides[0].name #=> String
12124
+ # resp.environment_configurations[0].configuration_parameters.parameter_overrides[0].value #=> String
12125
+ # resp.environment_configurations[0].configuration_parameters.resolved_parameters #=> Array
12126
+ # resp.environment_configurations[0].configuration_parameters.resolved_parameters[0].is_editable #=> Boolean
12127
+ # resp.environment_configurations[0].configuration_parameters.resolved_parameters[0].name #=> String
12128
+ # resp.environment_configurations[0].configuration_parameters.resolved_parameters[0].value #=> String
12129
+ # resp.environment_configurations[0].configuration_parameters.ssm_path #=> String
12130
+ # resp.environment_configurations[0].deployment_mode #=> String, one of "ON_CREATE", "ON_DEMAND"
12131
+ # resp.environment_configurations[0].deployment_order #=> Integer
12132
+ # resp.environment_configurations[0].description #=> String
12133
+ # resp.environment_configurations[0].environment_blueprint_id #=> String
12134
+ # resp.environment_configurations[0].id #=> String
12135
+ # resp.environment_configurations[0].name #=> String
12136
+ # resp.id #=> String
12137
+ # resp.last_updated_at #=> Time
12138
+ # resp.name #=> String
12139
+ # resp.status #=> String, one of "ENABLED", "DISABLED"
12140
+ #
12141
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateProjectProfile AWS API Documentation
12142
+ #
12143
+ # @overload update_project_profile(params = {})
12144
+ # @param [Hash] params ({})
12145
+ def update_project_profile(params = {}, options = {})
12146
+ req = build_request(:update_project_profile, params)
12147
+ req.send_request(options)
12148
+ end
12149
+
12150
+ # Updates a rule. In Amazon DataZone, a rule is a formal agreement that
12151
+ # enforces specific requirements across user workflows (e.g., publishing
12152
+ # assets to the catalog, requesting subscriptions, creating projects)
12153
+ # within the Amazon DataZone data portal. These rules help maintain
12154
+ # consistency, ensure compliance, and uphold governance standards in
12155
+ # data management processes. For instance, a metadata enforcement rule
12156
+ # can specify the required information for creating a subscription
12157
+ # request or publishing a data asset to the catalog, ensuring alignment
12158
+ # with organizational standards.
12159
+ #
12160
+ # @option params [String] :description
12161
+ # The description of the rule.
12162
+ #
12163
+ # @option params [Types::RuleDetail] :detail
12164
+ # The detail of the rule.
12165
+ #
12166
+ # @option params [required, String] :domain_identifier
12167
+ # The ID of the domain in which a rule is to be updated.
12168
+ #
12169
+ # @option params [required, String] :identifier
12170
+ # The ID of the rule that is to be updated
12171
+ #
12172
+ # @option params [Boolean] :include_child_domain_units
12173
+ # Specifies whether to update this rule in the child domain units.
12174
+ #
12175
+ # @option params [String] :name
12176
+ # The name of the rule.
12177
+ #
12178
+ # @option params [Types::RuleScope] :scope
12179
+ # The scrope of the rule.
12180
+ #
12181
+ # @return [Types::UpdateRuleOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
12182
+ #
12183
+ # * {Types::UpdateRuleOutput#action #action} => String
12184
+ # * {Types::UpdateRuleOutput#created_at #created_at} => Time
12185
+ # * {Types::UpdateRuleOutput#created_by #created_by} => String
12186
+ # * {Types::UpdateRuleOutput#description #description} => String
12187
+ # * {Types::UpdateRuleOutput#detail #detail} => Types::RuleDetail
12188
+ # * {Types::UpdateRuleOutput#identifier #identifier} => String
12189
+ # * {Types::UpdateRuleOutput#last_updated_by #last_updated_by} => String
12190
+ # * {Types::UpdateRuleOutput#name #name} => String
12191
+ # * {Types::UpdateRuleOutput#revision #revision} => String
12192
+ # * {Types::UpdateRuleOutput#rule_type #rule_type} => String
12193
+ # * {Types::UpdateRuleOutput#scope #scope} => Types::RuleScope
12194
+ # * {Types::UpdateRuleOutput#target #target} => Types::RuleTarget
12195
+ # * {Types::UpdateRuleOutput#updated_at #updated_at} => Time
12196
+ #
12197
+ # @example Request syntax with placeholder values
12198
+ #
12199
+ # resp = client.update_rule({
12200
+ # description: "Description",
12201
+ # detail: {
12202
+ # metadata_form_enforcement_detail: {
12203
+ # required_metadata_forms: [
12204
+ # {
12205
+ # type_identifier: "FormTypeIdentifier", # required
12206
+ # type_revision: "Revision", # required
12207
+ # },
12208
+ # ],
12209
+ # },
12210
+ # },
12211
+ # domain_identifier: "DomainId", # required
12212
+ # identifier: "RuleId", # required
12213
+ # include_child_domain_units: false,
12214
+ # name: "RuleName",
12215
+ # scope: {
12216
+ # asset_type: {
12217
+ # selection_mode: "ALL", # required, accepts ALL, SPECIFIC
12218
+ # specific_asset_types: ["AssetTypeIdentifier"],
12219
+ # },
12220
+ # data_product: false,
12221
+ # project: {
12222
+ # selection_mode: "ALL", # required, accepts ALL, SPECIFIC
12223
+ # specific_projects: ["ProjectId"],
12224
+ # },
12225
+ # },
12226
+ # })
12227
+ #
12228
+ # @example Response structure
12229
+ #
12230
+ # resp.action #=> String, one of "CREATE_SUBSCRIPTION_REQUEST"
12231
+ # resp.created_at #=> Time
12232
+ # resp.created_by #=> String
12233
+ # resp.description #=> String
12234
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms #=> Array
12235
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms[0].type_identifier #=> String
12236
+ # resp.detail.metadata_form_enforcement_detail.required_metadata_forms[0].type_revision #=> String
12237
+ # resp.identifier #=> String
12238
+ # resp.last_updated_by #=> String
12239
+ # resp.name #=> String
12240
+ # resp.revision #=> String
12241
+ # resp.rule_type #=> String, one of "METADATA_FORM_ENFORCEMENT"
12242
+ # resp.scope.asset_type.selection_mode #=> String, one of "ALL", "SPECIFIC"
12243
+ # resp.scope.asset_type.specific_asset_types #=> Array
12244
+ # resp.scope.asset_type.specific_asset_types[0] #=> String
12245
+ # resp.scope.data_product #=> Boolean
12246
+ # resp.scope.project.selection_mode #=> String, one of "ALL", "SPECIFIC"
12247
+ # resp.scope.project.specific_projects #=> Array
12248
+ # resp.scope.project.specific_projects[0] #=> String
12249
+ # resp.target.domain_unit_target.domain_unit_id #=> String
12250
+ # resp.target.domain_unit_target.include_child_domain_units #=> Boolean
12251
+ # resp.updated_at #=> Time
12252
+ #
12253
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateRule AWS API Documentation
12254
+ #
12255
+ # @overload update_rule(params = {})
12256
+ # @param [Hash] params ({})
12257
+ def update_rule(params = {}, options = {})
12258
+ req = build_request(:update_rule, params)
12259
+ req.send_request(options)
12260
+ end
12261
+
10043
12262
  # Updates the status of the specified subscription grant status in
10044
12263
  # Amazon DataZone.
10045
12264
  #
@@ -10148,7 +12367,9 @@ module Aws::DataZone
10148
12367
  # * {Types::UpdateSubscriptionRequestOutput#created_by #created_by} => String
10149
12368
  # * {Types::UpdateSubscriptionRequestOutput#decision_comment #decision_comment} => String
10150
12369
  # * {Types::UpdateSubscriptionRequestOutput#domain_id #domain_id} => String
12370
+ # * {Types::UpdateSubscriptionRequestOutput#existing_subscription_id #existing_subscription_id} => String
10151
12371
  # * {Types::UpdateSubscriptionRequestOutput#id #id} => String
12372
+ # * {Types::UpdateSubscriptionRequestOutput#metadata_forms #metadata_forms} => Array&lt;Types::FormOutput&gt;
10152
12373
  # * {Types::UpdateSubscriptionRequestOutput#request_reason #request_reason} => String
10153
12374
  # * {Types::UpdateSubscriptionRequestOutput#reviewer_id #reviewer_id} => String
10154
12375
  # * {Types::UpdateSubscriptionRequestOutput#status #status} => String
@@ -10171,7 +12392,13 @@ module Aws::DataZone
10171
12392
  # resp.created_by #=> String
10172
12393
  # resp.decision_comment #=> String
10173
12394
  # resp.domain_id #=> String
12395
+ # resp.existing_subscription_id #=> String
10174
12396
  # resp.id #=> String
12397
+ # resp.metadata_forms #=> Array
12398
+ # resp.metadata_forms[0].content #=> String
12399
+ # resp.metadata_forms[0].form_name #=> String
12400
+ # resp.metadata_forms[0].type_name #=> String
12401
+ # resp.metadata_forms[0].type_revision #=> String
10175
12402
  # resp.request_reason #=> String
10176
12403
  # resp.reviewer_id #=> String
10177
12404
  # resp.status #=> String, one of "PENDING", "ACCEPTED", "REJECTED"
@@ -10283,7 +12510,7 @@ module Aws::DataZone
10283
12510
  # domain_identifier: "DomainId", # required
10284
12511
  # environment_identifier: "EnvironmentId", # required
10285
12512
  # identifier: "SubscriptionTargetId", # required
10286
- # manage_access_role: "String",
12513
+ # manage_access_role: "IamRoleArn",
10287
12514
  # name: "SubscriptionTargetName",
10288
12515
  # provider: "String",
10289
12516
  # subscription_target_config: [
@@ -10395,7 +12622,7 @@ module Aws::DataZone
10395
12622
  tracer: tracer
10396
12623
  )
10397
12624
  context[:gem_name] = 'aws-sdk-datazone'
10398
- context[:gem_version] = '1.27.0'
12625
+ context[:gem_version] = '1.29.0'
10399
12626
  Seahorse::Client::Request.new(handlers, context)
10400
12627
  end
10401
12628