aws-sdk-datazone 1.27.0 → 1.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -539,7 +539,9 @@ module Aws::DataZone
539
539
  # * {Types::AcceptSubscriptionRequestOutput#created_by #created_by} => String
540
540
  # * {Types::AcceptSubscriptionRequestOutput#decision_comment #decision_comment} => String
541
541
  # * {Types::AcceptSubscriptionRequestOutput#domain_id #domain_id} => String
542
+ # * {Types::AcceptSubscriptionRequestOutput#existing_subscription_id #existing_subscription_id} => String
542
543
  # * {Types::AcceptSubscriptionRequestOutput#id #id} => String
544
+ # * {Types::AcceptSubscriptionRequestOutput#metadata_forms #metadata_forms} => Array<Types::FormOutput>
543
545
  # * {Types::AcceptSubscriptionRequestOutput#request_reason #request_reason} => String
544
546
  # * {Types::AcceptSubscriptionRequestOutput#reviewer_id #reviewer_id} => String
545
547
  # * {Types::AcceptSubscriptionRequestOutput#status #status} => String
@@ -568,7 +570,13 @@ module Aws::DataZone
568
570
  # resp.created_by #=> String
569
571
  # resp.decision_comment #=> String
570
572
  # resp.domain_id #=> String
573
+ # resp.existing_subscription_id #=> String
571
574
  # resp.id #=> String
575
+ # resp.metadata_forms #=> Array
576
+ # resp.metadata_forms[0].content #=> String
577
+ # resp.metadata_forms[0].form_name #=> String
578
+ # resp.metadata_forms[0].type_name #=> String
579
+ # resp.metadata_forms[0].type_revision #=> String
572
580
  # resp.request_reason #=> String
573
581
  # resp.reviewer_id #=> String
574
582
  # resp.status #=> String, one of "PENDING", "ACCEPTED", "REJECTED"
@@ -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