AWS Clean Rooms Service

2026/06/30 - AWS Clean Rooms Service - 12 new 18 updated api methods

Changes  Adds support for intermediate tables in AWS Clean Rooms collaborations.

DisallowIntermediateTable (new) Link ¶

Invalidates a specific intermediate table that references the caller's base table. The data provider (base table owner) calls this operation, not the intermediate table owner. By default, invalidation cascades to descendant intermediate tables.

See also: AWS API Documentation

Request Syntax

client.disallow_intermediate_table(
    membershipIdentifier='string',
    intermediateTableName='string',
    includeDescendants=True|False
)
type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

The unique identifier of the membership that contains the intermediate table to disallow.

type intermediateTableName:

string

param intermediateTableName:

[REQUIRED]

The name of the intermediate table to disallow.

type includeDescendants:

boolean

param includeDescendants:

Specifies whether to cascade the disallow action to descendant intermediate tables. Default is true.

rtype:

dict

returns:

Response Syntax

{}

Response Structure

  • (dict) --

PopulateIntermediateTable (new) Link ¶

Executes the stored query of an intermediate table to materialize data into managed storage. With this operation, you can perform initial population and subsequent refreshes. Each call creates a new version. The returned analysis ID can be tracked using GetProtectedQuery. Only the intermediate table owner can call this operation.

See also: AWS API Documentation

Request Syntax

client.populate_intermediate_table(
    intermediateTableIdentifier='string',
    membershipIdentifier='string',
    parameters={
        'string': 'string'
    },
    computeConfiguration={
        'queryComputeConfiguration': {
            'type': 'CR.1X'|'CR.4X',
            'number': 123,
            'properties': {
                'spark': {
                    'string': 'string'
                }
            }
        }
    },
    analysisPayerAccountId='string'
)
type intermediateTableIdentifier:

string

param intermediateTableIdentifier:

[REQUIRED]

The unique identifier of the intermediate table to populate.

type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

The unique identifier of the membership that contains the intermediate table.

type parameters:

dict

param parameters:

The runtime parameter values that override the defaults in the stored query.

  • (string) --

    • (string) --

type computeConfiguration:

dict

param computeConfiguration:

The compute configuration for the population query execution.

  • queryComputeConfiguration (dict) --

    The configuration of the compute resources for workers running an analysis with the Clean Rooms SQL analytics engine.

    • type (string) --

      The worker compute configuration type.

    • number (integer) --

      The number of workers.

      SQL queries support a minimum value of 2 and a maximum value of 400.

      PySpark jobs support a minimum value of 4 and a maximum value of 128.

    • properties (dict) --

      The configuration properties for the worker compute environment. These properties allow you to customize the compute settings for your Clean Rooms workloads.

      • spark (dict) --

        The Spark configuration properties for SQL and PySpark workloads. This map contains key-value pairs that configure Apache Spark settings to optimize performance for your data processing jobs. You can specify up to 50 Spark properties, with each key being 1-200 characters and each value being 0-500 characters. These properties allow you to adjust compute capacity for large datasets and complex workloads.

        • (string) --

          • (string) --

type analysisPayerAccountId:

string

param analysisPayerAccountId:

The account ID of the member that pays for the analysis compute costs.

rtype:

dict

returns:

Response Syntax

{
    'analysisId': 'string',
    'analysisType': 'QUERY',
    'versionId': 'string'
}

Response Structure

  • (dict) --

    • analysisId (string) --

      The identifier for the protected query execution. Use this value with GetProtectedQuery to track the population progress.

    • analysisType (string) --

      The type of analysis performed to populate the intermediate table.

    • versionId (string) --

      The unique identifier of the version created by this population operation.

CreateIntermediateTable (new) Link ¶

Creates an intermediate table in a membership. An intermediate table stores a query definition that you can execute later using PopulateIntermediateTable to materialize cached results. The intermediate table is owned by the member with the CAN_QUERY ability. This operation does not execute the stored query.

See also: AWS API Documentation

Request Syntax

client.create_intermediate_table(
    membershipIdentifier='string',
    name='string',
    description='string',
    populationAnalysisConfiguration={
        'sqlParameters': {
            'queryString': 'string',
            'analysisTemplateArn': 'string'
        }
    },
    kmsKeyArn='string',
    retentionInDays=123,
    tags={
        'string': 'string'
    }
)
type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

The unique identifier of the membership where the intermediate table is created.

type name:

string

param name:

[REQUIRED]

The display name for the intermediate table.

type description:

string

param description:

A description of the intermediate table.

type populationAnalysisConfiguration:

dict

param populationAnalysisConfiguration:

[REQUIRED]

The configuration that defines the analysis used to populate the intermediate table. This configuration contains the SQL query or analysis template reference.

  • sqlParameters (dict) --

    The SQL parameters for the population analysis, including the query string or analysis template ARN.

    • queryString (string) --

      The SQL query string used to populate the intermediate table. Maximum length of 500,000 characters.

    • analysisTemplateArn (string) --

      The Amazon Resource Name (ARN) of the analysis template to use for populating the intermediate table.

type kmsKeyArn:

string

param kmsKeyArn:

The Amazon Resource Name (ARN) of the customer-managed KMS key used to encrypt the intermediate table data.

type retentionInDays:

integer

param retentionInDays:

The number of days to retain populated data versions. Minimum value of 1, maximum value of 365.

type tags:

dict

param tags:

An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource.

  • (string) --

    • (string) --

rtype:

dict

returns:

Response Syntax

{
    'intermediateTable': {
        'id': 'string',
        'arn': 'string',
        'name': 'string',
        'description': 'string',
        'membershipArn': 'string',
        'membershipId': 'string',
        'collaborationArn': 'string',
        'collaborationId': 'string',
        'childResources': [
            {
                'resourceId': 'string',
                'resourceType': 'INTERMEDIATE_TABLE',
                'resourceName': 'string',
                'ownerAccountId': 'string',
                'resourceStatus': 'CREATED'|'POPULATE_STARTED'|'POPULATE_SUCCESS'|'POPULATE_FAILED'|'DISALLOWED_BY_DATA_PROVIDER'|'BASE_TABLE_REMOVED'|'RETENTION_PERIOD_EXPIRED'
            },
        ],
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'status': 'CREATED'|'POPULATE_STARTED'|'POPULATE_SUCCESS'|'POPULATE_FAILED'|'DISALLOWED_BY_DATA_PROVIDER'|'BASE_TABLE_REMOVED'|'RETENTION_PERIOD_EXPIRED',
        'statusReason': 'string',
        'kmsKeyArn': 'string',
        'populationAnalysisConfiguration': {
            'sqlParameters': {
                'queryString': 'string',
                'analysisTemplateArn': 'string'
            }
        },
        'retentionInDays': 123,
        'tableDependencies': [
            {
                'id': 'string',
                'name': 'string',
                'type': 'TABLE'|'INTERMEDIATE_TABLE'|'ID_MAPPING_TABLE',
                'parentType': 'DIRECT'|'INDIRECT',
                'creatorAccountId': 'string'
            },
        ],
        'intermediateTableVersion': {
            'versionId': 'string',
            'analysisId': 'string',
            'analysisType': 'QUERY',
            'kmsKeyArn': 'string',
            'parameters': {
                'string': 'string'
            },
            'inheritedConstraints': {
                'additionalAnalyses': {
                    'value': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                    'sources': [
                        {
                            'name': 'string',
                            'id': 'string',
                            'type': 'TABLE'|'INTERMEDIATE_TABLE'|'ID_MAPPING_TABLE',
                            'value': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                            'sourceAccountId': 'string'
                        },
                    ]
                },
                'allowedAdditionalAnalyses': {
                    'value': [
                        'string',
                    ],
                    'sources': [
                        {
                            'name': 'string',
                            'id': 'string',
                            'type': 'TABLE'|'INTERMEDIATE_TABLE'|'ID_MAPPING_TABLE',
                            'value': [
                                'string',
                            ],
                            'sourceAccountId': 'string'
                        },
                    ]
                },
                'allowedResultReceivers': {
                    'value': [
                        'string',
                    ],
                    'sources': [
                        {
                            'name': 'string',
                            'id': 'string',
                            'type': 'TABLE'|'INTERMEDIATE_TABLE'|'ID_MAPPING_TABLE',
                            'value': [
                                'string',
                            ],
                            'sourceAccountId': 'string'
                        },
                    ]
                },
                'disallowedOutputColumns': {
                    'value': [
                        'string',
                    ],
                    'columnLineage': [
                        {
                            'column': 'string',
                            'sourceColumn': 'string',
                            'sourceName': 'string',
                            'sourceId': 'string',
                            'sourceType': 'TABLE'|'INTERMEDIATE_TABLE'|'ID_MAPPING_TABLE',
                            'sourceAccountId': 'string'
                        },
                    ]
                }
            },
            'expirationTime': datetime(2015, 1, 1)
        },
        'analysisRuleTypes': [
            'CUSTOM',
        ],
        'schema': {
            'columns': [
                {
                    'name': 'string',
                    'type': 'string'
                },
            ]
        }
    }
}

Response Structure

  • (dict) --

    • intermediateTable (dict) --

      The intermediate table that was created.

      • id (string) --

        The unique identifier of the intermediate table.

      • arn (string) --

        The Amazon Resource Name (ARN) of the intermediate table.

      • name (string) --

        The name of the intermediate table.

      • description (string) --

        The description of the intermediate table.

      • membershipArn (string) --

        The Amazon Resource Name (ARN) of the membership that contains the intermediate table.

      • membershipId (string) --

        The unique identifier of the membership that contains the intermediate table.

      • collaborationArn (string) --

        The Amazon Resource Name (ARN) of the collaboration that contains the intermediate table.

      • collaborationId (string) --

        The unique identifier of the collaboration that contains the intermediate table.

      • childResources (list) --

        The child resources that depend on this intermediate table.

        • (dict) --

          Contains information about a child resource of a given resource in a collaboration.

          • resourceId (string) --

            The unique identifier of the child resource.

          • resourceType (string) --

            The type of the child resource.

          • resourceName (string) --

            The name of the child resource.

          • ownerAccountId (string) --

            The Amazon Web Services account ID of the member who owns the child resource.

          • resourceStatus (string) --

            The current status of the child resource.

      • createTime (datetime) --

        The time the intermediate table was created.

      • updateTime (datetime) --

        The time the intermediate table was last updated.

      • status (string) --

        The current status of the intermediate table.

      • statusReason (string) --

        The reason for the current status of the intermediate table.

      • kmsKeyArn (string) --

        The Amazon Resource Name (ARN) of the KMS key used to encrypt the intermediate table data.

      • populationAnalysisConfiguration (dict) --

        The analysis configuration that defines the query used to populate the intermediate table.

        • sqlParameters (dict) --

          The SQL parameters for the population analysis, including the query string or analysis template ARN.

          • queryString (string) --

            The SQL query string used to populate the intermediate table. Maximum length of 500,000 characters.

          • analysisTemplateArn (string) --

            The Amazon Resource Name (ARN) of the analysis template to use for populating the intermediate table.

      • retentionInDays (integer) --

        The number of days that populated data is retained before expiring.

      • tableDependencies (list) --

        The list of base tables that this intermediate table depends on.

        • (dict) --

          Contains information about a base table that an intermediate table depends on.

          • id (string) --

            The unique identifier of the dependency table.

          • name (string) --

            The name of the dependency table.

          • type (string) --

            The type of the dependency table.

          • parentType (string) --

            Whether the dependency is direct or indirect. A direct dependency is a table explicitly referenced in the stored query, while an indirect dependency is referenced through another intermediate table.

          • creatorAccountId (string) --

            The Amazon Web Services account ID of the member who owns the dependency table.

      • intermediateTableVersion (dict) --

        The details of the currently active version of the intermediate table.

        • versionId (string) --

          The unique identifier of the active version.

        • analysisId (string) --

          The identifier of the protected query that created this version.

        • analysisType (string) --

          The type of analysis that created this version.

        • kmsKeyArn (string) --

          The Amazon Resource Name (ARN) of the KMS key used to encrypt this version's data.

        • parameters (dict) --

          The runtime parameters that were used when populating this version.

          • (string) --

            • (string) --

        • inheritedConstraints (dict) --

          The privacy constraints inherited from parent tables at the time this version was populated.

          • additionalAnalyses (dict) --

            The inherited additional analyses constraint.

            • value (string) --

              The effective additional analyses setting inherited from parent tables.

            • sources (list) --

              The list of parent tables that contribute to this inherited constraint.

              • (dict) --

                Contains information about a parent table that contributes an additional analyses constraint.

                • name (string) --

                  The name of the parent table.

                • id (string) --

                  The unique identifier of the parent table.

                • type (string) --

                  The type of the parent table.

                • value (string) --

                  The additional analyses setting defined on the parent table.

                • sourceAccountId (string) --

                  The Amazon Web Services account ID of the member who owns the parent table.

          • allowedAdditionalAnalyses (dict) --

            The inherited allowed additional analyses constraint.

            • value (list) --

              The effective list of allowed additional analyses inherited from parent tables.

              • (string) --

            • sources (list) --

              The list of parent tables that contribute to this inherited constraint.

              • (dict) --

                Contains information about a parent table that contributes an allowed additional analyses constraint.

                • name (string) --

                  The name of the parent table.

                • id (string) --

                  The unique identifier of the parent table.

                • type (string) --

                  The type of the parent table.

                • value (list) --

                  The allowed additional analyses defined on the parent table.

                  • (string) --

                • sourceAccountId (string) --

                  The Amazon Web Services account ID of the member who owns the parent table.

          • allowedResultReceivers (dict) --

            The inherited allowed result receivers constraint.

            • value (list) --

              The effective list of Amazon Web Services account IDs allowed to receive results, inherited from parent tables.

              • (string) --

            • sources (list) --

              The list of parent tables that contribute to this inherited constraint.

              • (dict) --

                Contains information about a parent table that contributes an allowed result receivers constraint.

                • name (string) --

                  The name of the parent table.

                • id (string) --

                  The unique identifier of the parent table.

                • type (string) --

                  The type of the parent table.

                • value (list) --

                  The allowed result receiver account IDs defined on the parent table.

                  • (string) --

                • sourceAccountId (string) --

                  The Amazon Web Services account ID of the member who owns the parent table.

          • disallowedOutputColumns (dict) --

            The inherited disallowed output columns constraint.

            • value (list) --

              The list of column names that are disallowed from appearing in query output, inherited from parent tables.

              • (string) --

            • columnLineage (list) --

              The lineage information that traces each disallowed output column back to its source in a parent table.

              • (dict) --

                Contains column lineage information that traces a disallowed output column back to its source in a base table.

                • column (string) --

                  The name of the column in the intermediate table.

                • sourceColumn (string) --

                  The name of the column in the source table.

                • sourceName (string) --

                  The name of the source table.

                • sourceId (string) --

                  The unique identifier of the source table.

                • sourceType (string) --

                  The type of the source table.

                • sourceAccountId (string) --

                  The Amazon Web Services account ID of the owner of the source table.

        • expirationTime (datetime) --

          The time when this version expires based on the retention period.

      • analysisRuleTypes (list) --

        The types of analysis rules associated with the intermediate table.

        • (string) --

      • schema (dict) --

        The schema of the intermediate table, containing column definitions. Available after the table has been successfully populated.

        • columns (list) --

          The list of columns in the intermediate table schema.

          • (dict) --

            A column within a schema relation, derived from the underlying table.

            • name (string) --

              The name of the column.

            • type (string) --

              The type of the column.

GetIntermediateTable (new) Link ¶

Retrieves an intermediate table. Returns the full details of the intermediate table, including schema, table dependencies, inherited constraints, child resources, and status. Only the intermediate table owner can call this operation.

See also: AWS API Documentation

Request Syntax

client.get_intermediate_table(
    intermediateTableIdentifier='string',
    membershipIdentifier='string'
)
type intermediateTableIdentifier:

string

param intermediateTableIdentifier:

[REQUIRED]

The unique identifier of the intermediate table to retrieve.

type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

The unique identifier of the membership that contains the intermediate table.

rtype:

dict

returns:

Response Syntax

{
    'intermediateTable': {
        'id': 'string',
        'arn': 'string',
        'name': 'string',
        'description': 'string',
        'membershipArn': 'string',
        'membershipId': 'string',
        'collaborationArn': 'string',
        'collaborationId': 'string',
        'childResources': [
            {
                'resourceId': 'string',
                'resourceType': 'INTERMEDIATE_TABLE',
                'resourceName': 'string',
                'ownerAccountId': 'string',
                'resourceStatus': 'CREATED'|'POPULATE_STARTED'|'POPULATE_SUCCESS'|'POPULATE_FAILED'|'DISALLOWED_BY_DATA_PROVIDER'|'BASE_TABLE_REMOVED'|'RETENTION_PERIOD_EXPIRED'
            },
        ],
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'status': 'CREATED'|'POPULATE_STARTED'|'POPULATE_SUCCESS'|'POPULATE_FAILED'|'DISALLOWED_BY_DATA_PROVIDER'|'BASE_TABLE_REMOVED'|'RETENTION_PERIOD_EXPIRED',
        'statusReason': 'string',
        'kmsKeyArn': 'string',
        'populationAnalysisConfiguration': {
            'sqlParameters': {
                'queryString': 'string',
                'analysisTemplateArn': 'string'
            }
        },
        'retentionInDays': 123,
        'tableDependencies': [
            {
                'id': 'string',
                'name': 'string',
                'type': 'TABLE'|'INTERMEDIATE_TABLE'|'ID_MAPPING_TABLE',
                'parentType': 'DIRECT'|'INDIRECT',
                'creatorAccountId': 'string'
            },
        ],
        'intermediateTableVersion': {
            'versionId': 'string',
            'analysisId': 'string',
            'analysisType': 'QUERY',
            'kmsKeyArn': 'string',
            'parameters': {
                'string': 'string'
            },
            'inheritedConstraints': {
                'additionalAnalyses': {
                    'value': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                    'sources': [
                        {
                            'name': 'string',
                            'id': 'string',
                            'type': 'TABLE'|'INTERMEDIATE_TABLE'|'ID_MAPPING_TABLE',
                            'value': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                            'sourceAccountId': 'string'
                        },
                    ]
                },
                'allowedAdditionalAnalyses': {
                    'value': [
                        'string',
                    ],
                    'sources': [
                        {
                            'name': 'string',
                            'id': 'string',
                            'type': 'TABLE'|'INTERMEDIATE_TABLE'|'ID_MAPPING_TABLE',
                            'value': [
                                'string',
                            ],
                            'sourceAccountId': 'string'
                        },
                    ]
                },
                'allowedResultReceivers': {
                    'value': [
                        'string',
                    ],
                    'sources': [
                        {
                            'name': 'string',
                            'id': 'string',
                            'type': 'TABLE'|'INTERMEDIATE_TABLE'|'ID_MAPPING_TABLE',
                            'value': [
                                'string',
                            ],
                            'sourceAccountId': 'string'
                        },
                    ]
                },
                'disallowedOutputColumns': {
                    'value': [
                        'string',
                    ],
                    'columnLineage': [
                        {
                            'column': 'string',
                            'sourceColumn': 'string',
                            'sourceName': 'string',
                            'sourceId': 'string',
                            'sourceType': 'TABLE'|'INTERMEDIATE_TABLE'|'ID_MAPPING_TABLE',
                            'sourceAccountId': 'string'
                        },
                    ]
                }
            },
            'expirationTime': datetime(2015, 1, 1)
        },
        'analysisRuleTypes': [
            'CUSTOM',
        ],
        'schema': {
            'columns': [
                {
                    'name': 'string',
                    'type': 'string'
                },
            ]
        }
    }
}

Response Structure

  • (dict) --

    • intermediateTable (dict) --

      The intermediate table retrieved.

      • id (string) --

        The unique identifier of the intermediate table.

      • arn (string) --

        The Amazon Resource Name (ARN) of the intermediate table.

      • name (string) --

        The name of the intermediate table.

      • description (string) --

        The description of the intermediate table.

      • membershipArn (string) --

        The Amazon Resource Name (ARN) of the membership that contains the intermediate table.

      • membershipId (string) --

        The unique identifier of the membership that contains the intermediate table.

      • collaborationArn (string) --

        The Amazon Resource Name (ARN) of the collaboration that contains the intermediate table.

      • collaborationId (string) --

        The unique identifier of the collaboration that contains the intermediate table.

      • childResources (list) --

        The child resources that depend on this intermediate table.

        • (dict) --

          Contains information about a child resource of a given resource in a collaboration.

          • resourceId (string) --

            The unique identifier of the child resource.

          • resourceType (string) --

            The type of the child resource.

          • resourceName (string) --

            The name of the child resource.

          • ownerAccountId (string) --

            The Amazon Web Services account ID of the member who owns the child resource.

          • resourceStatus (string) --

            The current status of the child resource.

      • createTime (datetime) --

        The time the intermediate table was created.

      • updateTime (datetime) --

        The time the intermediate table was last updated.

      • status (string) --

        The current status of the intermediate table.

      • statusReason (string) --

        The reason for the current status of the intermediate table.

      • kmsKeyArn (string) --

        The Amazon Resource Name (ARN) of the KMS key used to encrypt the intermediate table data.

      • populationAnalysisConfiguration (dict) --

        The analysis configuration that defines the query used to populate the intermediate table.

        • sqlParameters (dict) --

          The SQL parameters for the population analysis, including the query string or analysis template ARN.

          • queryString (string) --

            The SQL query string used to populate the intermediate table. Maximum length of 500,000 characters.

          • analysisTemplateArn (string) --

            The Amazon Resource Name (ARN) of the analysis template to use for populating the intermediate table.

      • retentionInDays (integer) --

        The number of days that populated data is retained before expiring.

      • tableDependencies (list) --

        The list of base tables that this intermediate table depends on.

        • (dict) --

          Contains information about a base table that an intermediate table depends on.

          • id (string) --

            The unique identifier of the dependency table.

          • name (string) --

            The name of the dependency table.

          • type (string) --

            The type of the dependency table.

          • parentType (string) --

            Whether the dependency is direct or indirect. A direct dependency is a table explicitly referenced in the stored query, while an indirect dependency is referenced through another intermediate table.

          • creatorAccountId (string) --

            The Amazon Web Services account ID of the member who owns the dependency table.

      • intermediateTableVersion (dict) --

        The details of the currently active version of the intermediate table.

        • versionId (string) --

          The unique identifier of the active version.

        • analysisId (string) --

          The identifier of the protected query that created this version.

        • analysisType (string) --

          The type of analysis that created this version.

        • kmsKeyArn (string) --

          The Amazon Resource Name (ARN) of the KMS key used to encrypt this version's data.

        • parameters (dict) --

          The runtime parameters that were used when populating this version.

          • (string) --

            • (string) --

        • inheritedConstraints (dict) --

          The privacy constraints inherited from parent tables at the time this version was populated.

          • additionalAnalyses (dict) --

            The inherited additional analyses constraint.

            • value (string) --

              The effective additional analyses setting inherited from parent tables.

            • sources (list) --

              The list of parent tables that contribute to this inherited constraint.

              • (dict) --

                Contains information about a parent table that contributes an additional analyses constraint.

                • name (string) --

                  The name of the parent table.

                • id (string) --

                  The unique identifier of the parent table.

                • type (string) --

                  The type of the parent table.

                • value (string) --

                  The additional analyses setting defined on the parent table.

                • sourceAccountId (string) --

                  The Amazon Web Services account ID of the member who owns the parent table.

          • allowedAdditionalAnalyses (dict) --

            The inherited allowed additional analyses constraint.

            • value (list) --

              The effective list of allowed additional analyses inherited from parent tables.

              • (string) --

            • sources (list) --

              The list of parent tables that contribute to this inherited constraint.

              • (dict) --

                Contains information about a parent table that contributes an allowed additional analyses constraint.

                • name (string) --

                  The name of the parent table.

                • id (string) --

                  The unique identifier of the parent table.

                • type (string) --

                  The type of the parent table.

                • value (list) --

                  The allowed additional analyses defined on the parent table.

                  • (string) --

                • sourceAccountId (string) --

                  The Amazon Web Services account ID of the member who owns the parent table.

          • allowedResultReceivers (dict) --

            The inherited allowed result receivers constraint.

            • value (list) --

              The effective list of Amazon Web Services account IDs allowed to receive results, inherited from parent tables.

              • (string) --

            • sources (list) --

              The list of parent tables that contribute to this inherited constraint.

              • (dict) --

                Contains information about a parent table that contributes an allowed result receivers constraint.

                • name (string) --

                  The name of the parent table.

                • id (string) --

                  The unique identifier of the parent table.

                • type (string) --

                  The type of the parent table.

                • value (list) --

                  The allowed result receiver account IDs defined on the parent table.

                  • (string) --

                • sourceAccountId (string) --

                  The Amazon Web Services account ID of the member who owns the parent table.

          • disallowedOutputColumns (dict) --

            The inherited disallowed output columns constraint.

            • value (list) --

              The list of column names that are disallowed from appearing in query output, inherited from parent tables.

              • (string) --

            • columnLineage (list) --

              The lineage information that traces each disallowed output column back to its source in a parent table.

              • (dict) --

                Contains column lineage information that traces a disallowed output column back to its source in a base table.

                • column (string) --

                  The name of the column in the intermediate table.

                • sourceColumn (string) --

                  The name of the column in the source table.

                • sourceName (string) --

                  The name of the source table.

                • sourceId (string) --

                  The unique identifier of the source table.

                • sourceType (string) --

                  The type of the source table.

                • sourceAccountId (string) --

                  The Amazon Web Services account ID of the owner of the source table.

        • expirationTime (datetime) --

          The time when this version expires based on the retention period.

      • analysisRuleTypes (list) --

        The types of analysis rules associated with the intermediate table.

        • (string) --

      • schema (dict) --

        The schema of the intermediate table, containing column definitions. Available after the table has been successfully populated.

        • columns (list) --

          The list of columns in the intermediate table schema.

          • (dict) --

            A column within a schema relation, derived from the underlying table.

            • name (string) --

              The name of the column.

            • type (string) --

              The type of the column.

DeleteIntermediateTable (new) Link ¶

Deletes an intermediate table. When you delete the table, the service marks it as DELETED, removes its analysis rule and schema, and triggers storage cleanup. This operation is idempotent. Only the intermediate table owner can call this operation.

See also: AWS API Documentation

Request Syntax

client.delete_intermediate_table(
    membershipIdentifier='string',
    intermediateTableIdentifier='string'
)
type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

The unique identifier of the membership that contains the intermediate table.

type intermediateTableIdentifier:

string

param intermediateTableIdentifier:

[REQUIRED]

The unique identifier of the intermediate table to delete.

rtype:

dict

returns:

Response Syntax

{}

Response Structure

  • (dict) --

ListIntermediateTableVersions (new) Link ¶

Lists the version history of an intermediate table. Each call to PopulateIntermediateTable creates a new version. We recommend using pagination to ensure that the operation returns quickly and successfully.

See also: AWS API Documentation

Request Syntax

client.list_intermediate_table_versions(
    membershipIdentifier='string',
    intermediateTableIdentifier='string',
    nextToken='string',
    maxResults=123
)
type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

The unique identifier of the membership that contains the intermediate table.

type intermediateTableIdentifier:

string

param intermediateTableIdentifier:

[REQUIRED]

The unique identifier of the intermediate table for which to list versions.

type nextToken:

string

param nextToken:

The pagination token that's used to fetch the next set of results.

type maxResults:

integer

param maxResults:

The maximum number of results that are returned for an API request call. The service chooses a default number if you don't set one. The service might return a nextToken even if the maxResults value has not been met.

rtype:

dict

returns:

Response Syntax

{
    'intermediateTableVersionSummaries': [
        {
            'versionId': 'string',
            'tableId': 'string',
            'createTime': datetime(2015, 1, 1),
            'analysisId': 'string',
            'status': 'POPULATE_STARTED'|'POPULATE_SUCCESS'|'POPULATE_FAILED'|'RETENTION_PERIOD_EXPIRED',
            'analysisType': 'QUERY',
            'kmsKeyArn': 'string',
            'expirationTime': datetime(2015, 1, 1)
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • intermediateTableVersionSummaries (list) --

      The list of intermediate table version summaries.

      • (dict) --

        Contains summary information about a version of an intermediate table.

        • versionId (string) --

          The unique identifier of the version.

        • tableId (string) --

          The unique identifier of the intermediate table that this version belongs to.

        • createTime (datetime) --

          The time the version was created.

        • analysisId (string) --

          The identifier of the protected query that created this version.

        • status (string) --

          The status of the version.

        • analysisType (string) --

          The type of analysis that created this version.

        • kmsKeyArn (string) --

          The Amazon Resource Name (ARN) of the KMS key used to encrypt this version's data.

        • expirationTime (datetime) --

          The time when this version expires based on the retention period.

    • nextToken (string) --

      The pagination token that's used to fetch the next set of results.

UpdateIntermediateTable (new) Link ¶

Updates an intermediate table. You can update the description, KMS key ARN, and column types of existing columns. Only the intermediate table owner can call this operation.

See also: AWS API Documentation

Request Syntax

client.update_intermediate_table(
    intermediateTableIdentifier='string',
    membershipIdentifier='string',
    description='string',
    kmsKeyArn='string',
    columns=[
        {
            'name': 'string',
            'type': 'string'
        },
    ]
)
type intermediateTableIdentifier:

string

param intermediateTableIdentifier:

[REQUIRED]

The unique identifier of the intermediate table to update.

type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

The unique identifier of the membership that contains the intermediate table.

type description:

string

param description:

A new description for the intermediate table.

type kmsKeyArn:

string

param kmsKeyArn:

The Amazon Resource Name (ARN) of the customer-managed KMS key to use for encrypting future population data.

type columns:

list

param columns:

The list of columns with updated type definitions. Only the type of existing columns can be updated.

  • (dict) --

    Contains the name and type of a column in an intermediate table.

    • name (string) -- [REQUIRED]

      The name of the column.

    • type (string) -- [REQUIRED]

      The data type of the column.

rtype:

dict

returns:

Response Syntax

{
    'intermediateTable': {
        'id': 'string',
        'arn': 'string',
        'name': 'string',
        'description': 'string',
        'membershipArn': 'string',
        'membershipId': 'string',
        'collaborationArn': 'string',
        'collaborationId': 'string',
        'childResources': [
            {
                'resourceId': 'string',
                'resourceType': 'INTERMEDIATE_TABLE',
                'resourceName': 'string',
                'ownerAccountId': 'string',
                'resourceStatus': 'CREATED'|'POPULATE_STARTED'|'POPULATE_SUCCESS'|'POPULATE_FAILED'|'DISALLOWED_BY_DATA_PROVIDER'|'BASE_TABLE_REMOVED'|'RETENTION_PERIOD_EXPIRED'
            },
        ],
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'status': 'CREATED'|'POPULATE_STARTED'|'POPULATE_SUCCESS'|'POPULATE_FAILED'|'DISALLOWED_BY_DATA_PROVIDER'|'BASE_TABLE_REMOVED'|'RETENTION_PERIOD_EXPIRED',
        'statusReason': 'string',
        'kmsKeyArn': 'string',
        'populationAnalysisConfiguration': {
            'sqlParameters': {
                'queryString': 'string',
                'analysisTemplateArn': 'string'
            }
        },
        'retentionInDays': 123,
        'tableDependencies': [
            {
                'id': 'string',
                'name': 'string',
                'type': 'TABLE'|'INTERMEDIATE_TABLE'|'ID_MAPPING_TABLE',
                'parentType': 'DIRECT'|'INDIRECT',
                'creatorAccountId': 'string'
            },
        ],
        'intermediateTableVersion': {
            'versionId': 'string',
            'analysisId': 'string',
            'analysisType': 'QUERY',
            'kmsKeyArn': 'string',
            'parameters': {
                'string': 'string'
            },
            'inheritedConstraints': {
                'additionalAnalyses': {
                    'value': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                    'sources': [
                        {
                            'name': 'string',
                            'id': 'string',
                            'type': 'TABLE'|'INTERMEDIATE_TABLE'|'ID_MAPPING_TABLE',
                            'value': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                            'sourceAccountId': 'string'
                        },
                    ]
                },
                'allowedAdditionalAnalyses': {
                    'value': [
                        'string',
                    ],
                    'sources': [
                        {
                            'name': 'string',
                            'id': 'string',
                            'type': 'TABLE'|'INTERMEDIATE_TABLE'|'ID_MAPPING_TABLE',
                            'value': [
                                'string',
                            ],
                            'sourceAccountId': 'string'
                        },
                    ]
                },
                'allowedResultReceivers': {
                    'value': [
                        'string',
                    ],
                    'sources': [
                        {
                            'name': 'string',
                            'id': 'string',
                            'type': 'TABLE'|'INTERMEDIATE_TABLE'|'ID_MAPPING_TABLE',
                            'value': [
                                'string',
                            ],
                            'sourceAccountId': 'string'
                        },
                    ]
                },
                'disallowedOutputColumns': {
                    'value': [
                        'string',
                    ],
                    'columnLineage': [
                        {
                            'column': 'string',
                            'sourceColumn': 'string',
                            'sourceName': 'string',
                            'sourceId': 'string',
                            'sourceType': 'TABLE'|'INTERMEDIATE_TABLE'|'ID_MAPPING_TABLE',
                            'sourceAccountId': 'string'
                        },
                    ]
                }
            },
            'expirationTime': datetime(2015, 1, 1)
        },
        'analysisRuleTypes': [
            'CUSTOM',
        ],
        'schema': {
            'columns': [
                {
                    'name': 'string',
                    'type': 'string'
                },
            ]
        }
    }
}

Response Structure

  • (dict) --

    • intermediateTable (dict) --

      The updated intermediate table.

      • id (string) --

        The unique identifier of the intermediate table.

      • arn (string) --

        The Amazon Resource Name (ARN) of the intermediate table.

      • name (string) --

        The name of the intermediate table.

      • description (string) --

        The description of the intermediate table.

      • membershipArn (string) --

        The Amazon Resource Name (ARN) of the membership that contains the intermediate table.

      • membershipId (string) --

        The unique identifier of the membership that contains the intermediate table.

      • collaborationArn (string) --

        The Amazon Resource Name (ARN) of the collaboration that contains the intermediate table.

      • collaborationId (string) --

        The unique identifier of the collaboration that contains the intermediate table.

      • childResources (list) --

        The child resources that depend on this intermediate table.

        • (dict) --

          Contains information about a child resource of a given resource in a collaboration.

          • resourceId (string) --

            The unique identifier of the child resource.

          • resourceType (string) --

            The type of the child resource.

          • resourceName (string) --

            The name of the child resource.

          • ownerAccountId (string) --

            The Amazon Web Services account ID of the member who owns the child resource.

          • resourceStatus (string) --

            The current status of the child resource.

      • createTime (datetime) --

        The time the intermediate table was created.

      • updateTime (datetime) --

        The time the intermediate table was last updated.

      • status (string) --

        The current status of the intermediate table.

      • statusReason (string) --

        The reason for the current status of the intermediate table.

      • kmsKeyArn (string) --

        The Amazon Resource Name (ARN) of the KMS key used to encrypt the intermediate table data.

      • populationAnalysisConfiguration (dict) --

        The analysis configuration that defines the query used to populate the intermediate table.

        • sqlParameters (dict) --

          The SQL parameters for the population analysis, including the query string or analysis template ARN.

          • queryString (string) --

            The SQL query string used to populate the intermediate table. Maximum length of 500,000 characters.

          • analysisTemplateArn (string) --

            The Amazon Resource Name (ARN) of the analysis template to use for populating the intermediate table.

      • retentionInDays (integer) --

        The number of days that populated data is retained before expiring.

      • tableDependencies (list) --

        The list of base tables that this intermediate table depends on.

        • (dict) --

          Contains information about a base table that an intermediate table depends on.

          • id (string) --

            The unique identifier of the dependency table.

          • name (string) --

            The name of the dependency table.

          • type (string) --

            The type of the dependency table.

          • parentType (string) --

            Whether the dependency is direct or indirect. A direct dependency is a table explicitly referenced in the stored query, while an indirect dependency is referenced through another intermediate table.

          • creatorAccountId (string) --

            The Amazon Web Services account ID of the member who owns the dependency table.

      • intermediateTableVersion (dict) --

        The details of the currently active version of the intermediate table.

        • versionId (string) --

          The unique identifier of the active version.

        • analysisId (string) --

          The identifier of the protected query that created this version.

        • analysisType (string) --

          The type of analysis that created this version.

        • kmsKeyArn (string) --

          The Amazon Resource Name (ARN) of the KMS key used to encrypt this version's data.

        • parameters (dict) --

          The runtime parameters that were used when populating this version.

          • (string) --

            • (string) --

        • inheritedConstraints (dict) --

          The privacy constraints inherited from parent tables at the time this version was populated.

          • additionalAnalyses (dict) --

            The inherited additional analyses constraint.

            • value (string) --

              The effective additional analyses setting inherited from parent tables.

            • sources (list) --

              The list of parent tables that contribute to this inherited constraint.

              • (dict) --

                Contains information about a parent table that contributes an additional analyses constraint.

                • name (string) --

                  The name of the parent table.

                • id (string) --

                  The unique identifier of the parent table.

                • type (string) --

                  The type of the parent table.

                • value (string) --

                  The additional analyses setting defined on the parent table.

                • sourceAccountId (string) --

                  The Amazon Web Services account ID of the member who owns the parent table.

          • allowedAdditionalAnalyses (dict) --

            The inherited allowed additional analyses constraint.

            • value (list) --

              The effective list of allowed additional analyses inherited from parent tables.

              • (string) --

            • sources (list) --

              The list of parent tables that contribute to this inherited constraint.

              • (dict) --

                Contains information about a parent table that contributes an allowed additional analyses constraint.

                • name (string) --

                  The name of the parent table.

                • id (string) --

                  The unique identifier of the parent table.

                • type (string) --

                  The type of the parent table.

                • value (list) --

                  The allowed additional analyses defined on the parent table.

                  • (string) --

                • sourceAccountId (string) --

                  The Amazon Web Services account ID of the member who owns the parent table.

          • allowedResultReceivers (dict) --

            The inherited allowed result receivers constraint.

            • value (list) --

              The effective list of Amazon Web Services account IDs allowed to receive results, inherited from parent tables.

              • (string) --

            • sources (list) --

              The list of parent tables that contribute to this inherited constraint.

              • (dict) --

                Contains information about a parent table that contributes an allowed result receivers constraint.

                • name (string) --

                  The name of the parent table.

                • id (string) --

                  The unique identifier of the parent table.

                • type (string) --

                  The type of the parent table.

                • value (list) --

                  The allowed result receiver account IDs defined on the parent table.

                  • (string) --

                • sourceAccountId (string) --

                  The Amazon Web Services account ID of the member who owns the parent table.

          • disallowedOutputColumns (dict) --

            The inherited disallowed output columns constraint.

            • value (list) --

              The list of column names that are disallowed from appearing in query output, inherited from parent tables.

              • (string) --

            • columnLineage (list) --

              The lineage information that traces each disallowed output column back to its source in a parent table.

              • (dict) --

                Contains column lineage information that traces a disallowed output column back to its source in a base table.

                • column (string) --

                  The name of the column in the intermediate table.

                • sourceColumn (string) --

                  The name of the column in the source table.

                • sourceName (string) --

                  The name of the source table.

                • sourceId (string) --

                  The unique identifier of the source table.

                • sourceType (string) --

                  The type of the source table.

                • sourceAccountId (string) --

                  The Amazon Web Services account ID of the owner of the source table.

        • expirationTime (datetime) --

          The time when this version expires based on the retention period.

      • analysisRuleTypes (list) --

        The types of analysis rules associated with the intermediate table.

        • (string) --

      • schema (dict) --

        The schema of the intermediate table, containing column definitions. Available after the table has been successfully populated.

        • columns (list) --

          The list of columns in the intermediate table schema.

          • (dict) --

            A column within a schema relation, derived from the underlying table.

            • name (string) --

              The name of the column.

            • type (string) --

              The type of the column.

ListIntermediateTables (new) Link ¶

Lists intermediate tables owned by the caller in a membership. We recommend using pagination to ensure that the operation returns quickly and successfully.

See also: AWS API Documentation

Request Syntax

client.list_intermediate_tables(
    membershipIdentifier='string',
    nextToken='string',
    maxResults=123
)
type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

The unique identifier of the membership for which to list intermediate tables.

type nextToken:

string

param nextToken:

The pagination token that's used to fetch the next set of results.

type maxResults:

integer

param maxResults:

The maximum number of results that are returned for an API request call. The service chooses a default number if you don't set one. The service might return a nextToken even if the maxResults value has not been met.

rtype:

dict

returns:

Response Syntax

{
    'intermediateTableSummaries': [
        {
            'id': 'string',
            'arn': 'string',
            'name': 'string',
            'description': 'string',
            'membershipArn': 'string',
            'membershipId': 'string',
            'collaborationArn': 'string',
            'collaborationId': 'string',
            'createTime': datetime(2015, 1, 1),
            'updateTime': datetime(2015, 1, 1),
            'status': 'CREATED'|'POPULATE_STARTED'|'POPULATE_SUCCESS'|'POPULATE_FAILED'|'DISALLOWED_BY_DATA_PROVIDER'|'BASE_TABLE_REMOVED'|'RETENTION_PERIOD_EXPIRED',
            'retentionInDays': 123,
            'analysisRuleTypes': [
                'CUSTOM',
            ]
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • intermediateTableSummaries (list) --

      The list of intermediate table summaries.

      • (dict) --

        Contains summary information about an intermediate table.

        • id (string) --

          The unique identifier of the intermediate table.

        • arn (string) --

          The Amazon Resource Name (ARN) of the intermediate table.

        • name (string) --

          The name of the intermediate table.

        • description (string) --

          The description of the intermediate table.

        • membershipArn (string) --

          The Amazon Resource Name (ARN) of the membership that contains the intermediate table.

        • membershipId (string) --

          The unique identifier of the membership that contains the intermediate table.

        • collaborationArn (string) --

          The Amazon Resource Name (ARN) of the collaboration that contains the intermediate table.

        • collaborationId (string) --

          The unique identifier of the collaboration that contains the intermediate table.

        • createTime (datetime) --

          The time the intermediate table was created.

        • updateTime (datetime) --

          The time the intermediate table was last updated.

        • status (string) --

          The current status of the intermediate table.

        • retentionInDays (integer) --

          The number of days that populated data is retained before expiring.

        • analysisRuleTypes (list) --

          The types of analysis rules associated with the intermediate table.

          • (string) --

    • nextToken (string) --

      The pagination token that's used to fetch the next set of results.

UpdateIntermediateTableAnalysisRule (new) Link ¶

Updates the analysis rule policy for an intermediate table. Only the intermediate table owner can call this operation.

See also: AWS API Documentation

Request Syntax

client.update_intermediate_table_analysis_rule(
    membershipIdentifier='string',
    intermediateTableIdentifier='string',
    analysisRuleType='CUSTOM',
    analysisRulePolicy={
        'v1': {
            'custom': {
                'allowedAnalyses': [
                    'string',
                ],
                'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                'allowedAdditionalAnalyses': [
                    'string',
                ],
                'allowedAnalysisProviders': [
                    'string',
                ],
                'allowedResultReceivers': [
                    'string',
                ],
                'differentialPrivacy': {
                    'columns': [
                        {
                            'name': 'string'
                        },
                    ]
                },
                'disallowedOutputColumns': [
                    'string',
                ]
            }
        }
    }
)
type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

The unique identifier of the membership that contains the intermediate table.

type intermediateTableIdentifier:

string

param intermediateTableIdentifier:

[REQUIRED]

The unique identifier of the intermediate table for which to update the analysis rule.

type analysisRuleType:

string

param analysisRuleType:

[REQUIRED]

The type of analysis rule to update. Currently, only CUSTOM is supported.

type analysisRulePolicy:

dict

param analysisRulePolicy:

[REQUIRED]

The updated analysis rule policy for the intermediate table.

  • v1 (dict) --

    The version 1 policy for the analysis rule.

    • custom (dict) --

      The custom analysis rule policy.

      • allowedAnalyses (list) --

        The list of allowed analyses that can be performed on the intermediate table.

        • (string) --

      • additionalAnalyses (string) --

        The setting that controls whether additional analyses are allowed on the intermediate table.

      • allowedAdditionalAnalyses (list) --

        The list of allowed additional analyses for the intermediate table.

        • (string) --

      • allowedAnalysisProviders (list) --

        The list of Amazon Web Services account IDs for the allowed analysis providers.

        • (string) --

      • allowedResultReceivers (list) --

        The list of Amazon Web Services account IDs that are allowed to receive results from queries run on the intermediate table.

        • (string) --

      • differentialPrivacy (dict) --

        Specifies the unique identifier for your users.

        • columns (list) -- [REQUIRED]

          The name of the column (such as user_id) that contains the unique identifier of your users whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

          • (dict) --

            Specifies the name of the column that contains the unique identifier of your users, whose privacy you want to protect.

            • name (string) -- [REQUIRED]

              The name of the column, such as user_id, that contains the unique identifier of your users, whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

      • disallowedOutputColumns (list) --

        The list of columns that are not allowed in the query output.

        • (string) --

rtype:

dict

returns:

Response Syntax

{
    'analysisRule': {
        'intermediateTableIdentifier': 'string',
        'intermediateTableArn': 'string',
        'analysisRulePolicy': {
            'v1': {
                'custom': {
                    'allowedAnalyses': [
                        'string',
                    ],
                    'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                    'allowedAdditionalAnalyses': [
                        'string',
                    ],
                    'allowedAnalysisProviders': [
                        'string',
                    ],
                    'allowedResultReceivers': [
                        'string',
                    ],
                    'differentialPrivacy': {
                        'columns': [
                            {
                                'name': 'string'
                            },
                        ]
                    },
                    'disallowedOutputColumns': [
                        'string',
                    ]
                }
            }
        },
        'analysisRuleType': 'CUSTOM',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1)
    }
}

Response Structure

  • (dict) --

    • analysisRule (dict) --

      The updated analysis rule for the intermediate table.

      • intermediateTableIdentifier (string) --

        The unique identifier of the intermediate table associated with this analysis rule.

      • intermediateTableArn (string) --

        The Amazon Resource Name (ARN) of the intermediate table associated with this analysis rule.

      • analysisRulePolicy (dict) --

        The policy of the analysis rule.

        • v1 (dict) --

          The version 1 policy for the analysis rule.

          • custom (dict) --

            The custom analysis rule policy.

            • allowedAnalyses (list) --

              The list of allowed analyses that can be performed on the intermediate table.

              • (string) --

            • additionalAnalyses (string) --

              The setting that controls whether additional analyses are allowed on the intermediate table.

            • allowedAdditionalAnalyses (list) --

              The list of allowed additional analyses for the intermediate table.

              • (string) --

            • allowedAnalysisProviders (list) --

              The list of Amazon Web Services account IDs for the allowed analysis providers.

              • (string) --

            • allowedResultReceivers (list) --

              The list of Amazon Web Services account IDs that are allowed to receive results from queries run on the intermediate table.

              • (string) --

            • differentialPrivacy (dict) --

              Specifies the unique identifier for your users.

              • columns (list) --

                The name of the column (such as user_id) that contains the unique identifier of your users whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

                • (dict) --

                  Specifies the name of the column that contains the unique identifier of your users, whose privacy you want to protect.

                  • name (string) --

                    The name of the column, such as user_id, that contains the unique identifier of your users, whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

            • disallowedOutputColumns (list) --

              The list of columns that are not allowed in the query output.

              • (string) --

      • analysisRuleType (string) --

        The type of the analysis rule.

      • createTime (datetime) --

        The time the analysis rule was created.

      • updateTime (datetime) --

        The time the analysis rule was last updated.

DeleteIntermediateTableAnalysisRule (new) Link ¶

Deletes an analysis rule from an intermediate table. After the analysis rule is deleted, the intermediate table becomes unqueryable until a new analysis rule is attached. Only the intermediate table owner can call this operation.

See also: AWS API Documentation

Request Syntax

client.delete_intermediate_table_analysis_rule(
    membershipIdentifier='string',
    intermediateTableIdentifier='string',
    analysisRuleType='CUSTOM'
)
type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

The unique identifier of the membership that contains the intermediate table.

type intermediateTableIdentifier:

string

param intermediateTableIdentifier:

[REQUIRED]

The unique identifier of the intermediate table from which to delete the analysis rule.

type analysisRuleType:

string

param analysisRuleType:

[REQUIRED]

The type of analysis rule to delete. Currently, only CUSTOM is supported.

rtype:

dict

returns:

Response Syntax

{}

Response Structure

  • (dict) --

GetIntermediateTableAnalysisRule (new) Link ¶

Retrieves the analysis rule for an intermediate table.

See also: AWS API Documentation

Request Syntax

client.get_intermediate_table_analysis_rule(
    membershipIdentifier='string',
    intermediateTableIdentifier='string',
    analysisRuleType='CUSTOM'
)
type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

The unique identifier of the membership that contains the intermediate table.

type intermediateTableIdentifier:

string

param intermediateTableIdentifier:

[REQUIRED]

The unique identifier of the intermediate table for which to retrieve the analysis rule.

type analysisRuleType:

string

param analysisRuleType:

[REQUIRED]

The type of analysis rule to retrieve. Currently, only CUSTOM is supported.

rtype:

dict

returns:

Response Syntax

{
    'analysisRule': {
        'intermediateTableIdentifier': 'string',
        'intermediateTableArn': 'string',
        'analysisRulePolicy': {
            'v1': {
                'custom': {
                    'allowedAnalyses': [
                        'string',
                    ],
                    'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                    'allowedAdditionalAnalyses': [
                        'string',
                    ],
                    'allowedAnalysisProviders': [
                        'string',
                    ],
                    'allowedResultReceivers': [
                        'string',
                    ],
                    'differentialPrivacy': {
                        'columns': [
                            {
                                'name': 'string'
                            },
                        ]
                    },
                    'disallowedOutputColumns': [
                        'string',
                    ]
                }
            }
        },
        'analysisRuleType': 'CUSTOM',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1)
    }
}

Response Structure

  • (dict) --

    • analysisRule (dict) --

      The analysis rule for the intermediate table.

      • intermediateTableIdentifier (string) --

        The unique identifier of the intermediate table associated with this analysis rule.

      • intermediateTableArn (string) --

        The Amazon Resource Name (ARN) of the intermediate table associated with this analysis rule.

      • analysisRulePolicy (dict) --

        The policy of the analysis rule.

        • v1 (dict) --

          The version 1 policy for the analysis rule.

          • custom (dict) --

            The custom analysis rule policy.

            • allowedAnalyses (list) --

              The list of allowed analyses that can be performed on the intermediate table.

              • (string) --

            • additionalAnalyses (string) --

              The setting that controls whether additional analyses are allowed on the intermediate table.

            • allowedAdditionalAnalyses (list) --

              The list of allowed additional analyses for the intermediate table.

              • (string) --

            • allowedAnalysisProviders (list) --

              The list of Amazon Web Services account IDs for the allowed analysis providers.

              • (string) --

            • allowedResultReceivers (list) --

              The list of Amazon Web Services account IDs that are allowed to receive results from queries run on the intermediate table.

              • (string) --

            • differentialPrivacy (dict) --

              Specifies the unique identifier for your users.

              • columns (list) --

                The name of the column (such as user_id) that contains the unique identifier of your users whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

                • (dict) --

                  Specifies the name of the column that contains the unique identifier of your users, whose privacy you want to protect.

                  • name (string) --

                    The name of the column, such as user_id, that contains the unique identifier of your users, whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

            • disallowedOutputColumns (list) --

              The list of columns that are not allowed in the query output.

              • (string) --

      • analysisRuleType (string) --

        The type of the analysis rule.

      • createTime (datetime) --

        The time the analysis rule was created.

      • updateTime (datetime) --

        The time the analysis rule was last updated.

CreateIntermediateTableAnalysisRule (new) Link ¶

Creates an analysis rule for an intermediate table. Only the CUSTOM analysis rule type is supported. The service automatically determines whether the rule is first-party or multi-party restricted based on the intermediate table's inherited constraints. Only the intermediate table owner can call this operation.

See also: AWS API Documentation

Request Syntax

client.create_intermediate_table_analysis_rule(
    membershipIdentifier='string',
    intermediateTableIdentifier='string',
    analysisRuleType='CUSTOM',
    analysisRulePolicy={
        'v1': {
            'custom': {
                'allowedAnalyses': [
                    'string',
                ],
                'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                'allowedAdditionalAnalyses': [
                    'string',
                ],
                'allowedAnalysisProviders': [
                    'string',
                ],
                'allowedResultReceivers': [
                    'string',
                ],
                'differentialPrivacy': {
                    'columns': [
                        {
                            'name': 'string'
                        },
                    ]
                },
                'disallowedOutputColumns': [
                    'string',
                ]
            }
        }
    }
)
type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

The unique identifier of the membership that contains the intermediate table.

type intermediateTableIdentifier:

string

param intermediateTableIdentifier:

[REQUIRED]

The unique identifier of the intermediate table for which to create the analysis rule.

type analysisRuleType:

string

param analysisRuleType:

[REQUIRED]

The type of analysis rule to create. Currently, only CUSTOM is supported.

type analysisRulePolicy:

dict

param analysisRulePolicy:

[REQUIRED]

The analysis rule policy to apply to the intermediate table.

  • v1 (dict) --

    The version 1 policy for the analysis rule.

    • custom (dict) --

      The custom analysis rule policy.

      • allowedAnalyses (list) --

        The list of allowed analyses that can be performed on the intermediate table.

        • (string) --

      • additionalAnalyses (string) --

        The setting that controls whether additional analyses are allowed on the intermediate table.

      • allowedAdditionalAnalyses (list) --

        The list of allowed additional analyses for the intermediate table.

        • (string) --

      • allowedAnalysisProviders (list) --

        The list of Amazon Web Services account IDs for the allowed analysis providers.

        • (string) --

      • allowedResultReceivers (list) --

        The list of Amazon Web Services account IDs that are allowed to receive results from queries run on the intermediate table.

        • (string) --

      • differentialPrivacy (dict) --

        Specifies the unique identifier for your users.

        • columns (list) -- [REQUIRED]

          The name of the column (such as user_id) that contains the unique identifier of your users whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

          • (dict) --

            Specifies the name of the column that contains the unique identifier of your users, whose privacy you want to protect.

            • name (string) -- [REQUIRED]

              The name of the column, such as user_id, that contains the unique identifier of your users, whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

      • disallowedOutputColumns (list) --

        The list of columns that are not allowed in the query output.

        • (string) --

rtype:

dict

returns:

Response Syntax

{
    'analysisRule': {
        'intermediateTableIdentifier': 'string',
        'intermediateTableArn': 'string',
        'analysisRulePolicy': {
            'v1': {
                'custom': {
                    'allowedAnalyses': [
                        'string',
                    ],
                    'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                    'allowedAdditionalAnalyses': [
                        'string',
                    ],
                    'allowedAnalysisProviders': [
                        'string',
                    ],
                    'allowedResultReceivers': [
                        'string',
                    ],
                    'differentialPrivacy': {
                        'columns': [
                            {
                                'name': 'string'
                            },
                        ]
                    },
                    'disallowedOutputColumns': [
                        'string',
                    ]
                }
            }
        },
        'analysisRuleType': 'CUSTOM',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1)
    }
}

Response Structure

  • (dict) --

    • analysisRule (dict) --

      The analysis rule that was created for the intermediate table.

      • intermediateTableIdentifier (string) --

        The unique identifier of the intermediate table associated with this analysis rule.

      • intermediateTableArn (string) --

        The Amazon Resource Name (ARN) of the intermediate table associated with this analysis rule.

      • analysisRulePolicy (dict) --

        The policy of the analysis rule.

        • v1 (dict) --

          The version 1 policy for the analysis rule.

          • custom (dict) --

            The custom analysis rule policy.

            • allowedAnalyses (list) --

              The list of allowed analyses that can be performed on the intermediate table.

              • (string) --

            • additionalAnalyses (string) --

              The setting that controls whether additional analyses are allowed on the intermediate table.

            • allowedAdditionalAnalyses (list) --

              The list of allowed additional analyses for the intermediate table.

              • (string) --

            • allowedAnalysisProviders (list) --

              The list of Amazon Web Services account IDs for the allowed analysis providers.

              • (string) --

            • allowedResultReceivers (list) --

              The list of Amazon Web Services account IDs that are allowed to receive results from queries run on the intermediate table.

              • (string) --

            • differentialPrivacy (dict) --

              Specifies the unique identifier for your users.

              • columns (list) --

                The name of the column (such as user_id) that contains the unique identifier of your users whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

                • (dict) --

                  Specifies the name of the column that contains the unique identifier of your users, whose privacy you want to protect.

                  • name (string) --

                    The name of the column, such as user_id, that contains the unique identifier of your users, whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

            • disallowedOutputColumns (list) --

              The list of columns that are not allowed in the query output.

              • (string) --

      • analysisRuleType (string) --

        The type of the analysis rule.

      • createTime (datetime) --

        The time the analysis rule was created.

      • updateTime (datetime) --

        The time the analysis rule was last updated.

BatchGetSchema (updated) Link ¶
Changes (response)
{'schemas': {'schemaStatusDetails': {'reasons': {'code': {'INTERMEDIATE_TABLE_ANALYSIS_RULE_MISSING',
                                                          'INTERMEDIATE_TABLE_BASE_TABLE_REMOVED',
                                                          'INTERMEDIATE_TABLE_DISALLOWED_BY_DATA_PROVIDER',
                                                          'INTERMEDIATE_TABLE_INHERITED_CONSTRAINTS_VIOLATED',
                                                          'INTERMEDIATE_TABLE_NOT_POPULATED',
                                                          'INTERMEDIATE_TABLE_RETENTION_PERIOD_EXPIRED'}}},
             'schemaTypeProperties': {'configuredTableAssociation': {'configuredTableAssociationId': 'string'},
                                      'idMappingTable': {'idMappingTableId': 'string'},
                                      'intermediateTable': {'intermediateTableId': 'string'}},
             'type': {'INTERMEDIATE_TABLE'}}}

Retrieves multiple schemas by their identifiers.

See also: AWS API Documentation

Request Syntax

client.batch_get_schema(
    collaborationIdentifier='string',
    names=[
        'string',
    ]
)
type collaborationIdentifier:

string

param collaborationIdentifier:

[REQUIRED]

A unique identifier for the collaboration that the schemas belong to. Currently accepts collaboration ID.

type names:

list

param names:

[REQUIRED]

The names for the schema objects to retrieve.

  • (string) --

rtype:

dict

returns:

Response Syntax

{
    'schemas': [
        {
            'columns': [
                {
                    'name': 'string',
                    'type': 'string'
                },
            ],
            'partitionKeys': [
                {
                    'name': 'string',
                    'type': 'string'
                },
            ],
            'analysisRuleTypes': [
                'AGGREGATION'|'LIST'|'CUSTOM'|'ID_MAPPING_TABLE',
            ],
            'analysisMethod': 'DIRECT_QUERY'|'DIRECT_JOB'|'MULTIPLE',
            'selectedAnalysisMethods': [
                'DIRECT_QUERY'|'DIRECT_JOB',
            ],
            'creatorAccountId': 'string',
            'name': 'string',
            'collaborationId': 'string',
            'collaborationArn': 'string',
            'description': 'string',
            'createTime': datetime(2015, 1, 1),
            'updateTime': datetime(2015, 1, 1),
            'type': 'TABLE'|'ID_MAPPING_TABLE'|'INTERMEDIATE_TABLE',
            'schemaStatusDetails': [
                {
                    'status': 'READY'|'NOT_READY',
                    'reasons': [
                        {
                            'code': 'ANALYSIS_RULE_MISSING'|'ANALYSIS_TEMPLATES_NOT_CONFIGURED'|'ANALYSIS_PROVIDERS_NOT_CONFIGURED'|'DIFFERENTIAL_PRIVACY_POLICY_NOT_CONFIGURED'|'ID_MAPPING_TABLE_NOT_POPULATED'|'COLLABORATION_ANALYSIS_RULE_NOT_CONFIGURED'|'ADDITIONAL_ANALYSES_NOT_CONFIGURED'|'RESULT_RECEIVERS_NOT_CONFIGURED'|'ADDITIONAL_ANALYSES_NOT_ALLOWED'|'RESULT_RECEIVERS_NOT_ALLOWED'|'ANALYSIS_RULE_TYPES_NOT_COMPATIBLE'|'INTERMEDIATE_TABLE_NOT_POPULATED'|'INTERMEDIATE_TABLE_ANALYSIS_RULE_MISSING'|'INTERMEDIATE_TABLE_BASE_TABLE_REMOVED'|'INTERMEDIATE_TABLE_INHERITED_CONSTRAINTS_VIOLATED'|'INTERMEDIATE_TABLE_DISALLOWED_BY_DATA_PROVIDER'|'INTERMEDIATE_TABLE_RETENTION_PERIOD_EXPIRED',
                            'message': 'string'
                        },
                    ],
                    'analysisRuleType': 'AGGREGATION'|'LIST'|'CUSTOM'|'ID_MAPPING_TABLE',
                    'configurations': [
                        'DIFFERENTIAL_PRIVACY',
                    ],
                    'analysisType': 'DIRECT_ANALYSIS'|'ADDITIONAL_ANALYSIS'
                },
            ],
            'resourceArn': 'string',
            'schemaTypeProperties': {
                'idMappingTable': {
                    'idMappingTableInputSource': [
                        {
                            'idNamespaceAssociationId': 'string',
                            'type': 'SOURCE'|'TARGET'
                        },
                    ],
                    'idMappingTableId': 'string'
                },
                'intermediateTable': {
                    'intermediateTableId': 'string'
                },
                'configuredTableAssociation': {
                    'configuredTableAssociationId': 'string'
                }
            }
        },
    ],
    'errors': [
        {
            'name': 'string',
            'code': 'string',
            'message': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • schemas (list) --

      The retrieved list of schemas.

      • (dict) --

        A schema is a relation within a collaboration.

        • columns (list) --

          The columns for the relation that this schema represents.

          • (dict) --

            A column within a schema relation, derived from the underlying table.

            • name (string) --

              The name of the column.

            • type (string) --

              The type of the column.

        • partitionKeys (list) --

          The partition keys for the dataset underlying this schema.

          • (dict) --

            A column within a schema relation, derived from the underlying table.

            • name (string) --

              The name of the column.

            • type (string) --

              The type of the column.

        • analysisRuleTypes (list) --

          The analysis rule types that are associated with the schema. Currently, only one entry is present.

          • (string) --

        • analysisMethod (string) --

          The analysis method for the schema.

          DIRECT_QUERY allows SQL queries to be run directly on this table.

          DIRECT_JOB allows PySpark jobs to be run directly on this table.

          MULTIPLE allows both SQL queries and PySpark jobs to be run directly on this table.

        • selectedAnalysisMethods (list) --

          The selected analysis methods for the schema.

          • (string) --

        • creatorAccountId (string) --

          The unique account ID for the Amazon Web Services account that owns the schema.

        • name (string) --

          A name for the schema. The schema relation is referred to by this name when queried by a protected query.

        • collaborationId (string) --

          The unique ID for the collaboration that the schema belongs to.

        • collaborationArn (string) --

          The unique Amazon Resource Name (ARN) for the collaboration that the schema belongs to.

        • description (string) --

          A description for the schema.

        • createTime (datetime) --

          The time at which the schema was created.

        • updateTime (datetime) --

          The most recent time at which the schema was updated.

        • type (string) --

          The type of schema.

        • schemaStatusDetails (list) --

          Details about the status of the schema. Currently, only one entry is present.

          • (dict) --

            Information about the schema status.

            A status of READY means that based on the schema analysis rule, queries of the given analysis rule type are properly configured to run queries on this schema.

            • status (string) --

              The status of the schema, indicating if it is ready to query.

            • reasons (list) --

              The reasons why the schema status is set to its current state.

              • (dict) --

                A reason why the schema status is set to its current value.

                • code (string) --

                  The schema status reason code.

                • message (string) --

                  An explanation of the schema status reason code.

            • analysisRuleType (string) --

              The analysis rule type for which the schema status has been evaluated.

            • configurations (list) --

              The configuration details of the schema analysis rule for the given type.

              • (string) --

            • analysisType (string) --

              The type of analysis that can be performed on the schema.

              A schema can have an analysisType of DIRECT_ANALYSIS, ADDITIONAL_ANALYSIS_FOR_AUDIENCE_GENERATION, or both.

        • resourceArn (string) --

          The Amazon Resource Name (ARN) of the schema resource.

        • schemaTypeProperties (dict) --

          The schema type properties.

          • idMappingTable (dict) --

            The ID mapping table for the schema type properties.

            • idMappingTableInputSource (list) --

              Defines which ID namespace associations are used to create the ID mapping table.

              • (dict) --

                The input source of the ID mapping table.

                • idNamespaceAssociationId (string) --

                  The unique identifier of the ID namespace association.

                • type (string) --

                  The type of the input source of the ID mapping table.

            • idMappingTableId (string) --

              The unique identifier of the ID mapping table.

          • intermediateTable (dict) --

            The schema type properties for an intermediate table.

            • intermediateTableId (string) --

              The unique identifier of the intermediate table.

          • configuredTableAssociation (dict) --

            The schema type properties for a configured table association.

            • configuredTableAssociationId (string) --

              The unique identifier of the configured table association.

    • errors (list) --

      Error reasons for schemas that could not be retrieved. One error is returned for every schema that could not be retrieved.

      • (dict) --

        An error describing why a schema could not be fetched.

        • name (string) --

          An error name for the error.

        • code (string) --

          An error code for the error.

        • message (string) --

          An error message for the error.

BatchGetSchemaAnalysisRule (updated) Link ¶
Changes (response)
{'analysisRules': {'policy': {'v1': {'custom': {'allowedAdditionalAnalyses': ['string'],
                                                'allowedResultReceivers': ['string']}}}}}

Retrieves multiple analysis rule schemas.

See also: AWS API Documentation

Request Syntax

client.batch_get_schema_analysis_rule(
    collaborationIdentifier='string',
    schemaAnalysisRuleRequests=[
        {
            'name': 'string',
            'type': 'AGGREGATION'|'LIST'|'CUSTOM'|'ID_MAPPING_TABLE'
        },
    ]
)
type collaborationIdentifier:

string

param collaborationIdentifier:

[REQUIRED]

The unique identifier of the collaboration that contains the schema analysis rule.

type schemaAnalysisRuleRequests:

list

param schemaAnalysisRuleRequests:

[REQUIRED]

The information that's necessary to retrieve a schema analysis rule.

  • (dict) --

    Defines the information that's necessary to retrieve an analysis rule schema. Schema analysis rules are uniquely identified by a combination of the schema name and the analysis rule type for a given collaboration.

    • name (string) -- [REQUIRED]

      The name of the analysis rule schema that you are requesting.

    • type (string) -- [REQUIRED]

      The type of analysis rule schema that you are requesting.

rtype:

dict

returns:

Response Syntax

{
    'analysisRules': [
        {
            'collaborationId': 'string',
            'type': 'AGGREGATION'|'LIST'|'CUSTOM'|'ID_MAPPING_TABLE',
            'name': 'string',
            'createTime': datetime(2015, 1, 1),
            'updateTime': datetime(2015, 1, 1),
            'policy': {
                'v1': {
                    'list': {
                        'joinColumns': [
                            'string',
                        ],
                        'allowedJoinOperators': [
                            'OR'|'AND',
                        ],
                        'listColumns': [
                            'string',
                        ],
                        'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED'
                    },
                    'aggregation': {
                        'aggregateColumns': [
                            {
                                'columnNames': [
                                    'string',
                                ],
                                'function': 'SUM'|'SUM_DISTINCT'|'COUNT'|'COUNT_DISTINCT'|'AVG'
                            },
                        ],
                        'joinColumns': [
                            'string',
                        ],
                        'joinRequired': 'QUERY_RUNNER',
                        'allowedJoinOperators': [
                            'OR'|'AND',
                        ],
                        'dimensionColumns': [
                            'string',
                        ],
                        'scalarFunctions': [
                            'ABS'|'CAST'|'CEILING'|'COALESCE'|'CONVERT'|'CURRENT_DATE'|'DATEADD'|'EXTRACT'|'FLOOR'|'GETDATE'|'LN'|'LOG'|'LOWER'|'ROUND'|'RTRIM'|'SQRT'|'SUBSTRING'|'TO_CHAR'|'TO_DATE'|'TO_NUMBER'|'TO_TIMESTAMP'|'TRIM'|'TRUNC'|'UPPER',
                        ],
                        'outputConstraints': [
                            {
                                'columnName': 'string',
                                'minimum': 123,
                                'type': 'COUNT_DISTINCT'
                            },
                        ],
                        'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED'
                    },
                    'custom': {
                        'allowedAnalyses': [
                            'string',
                        ],
                        'allowedAnalysisProviders': [
                            'string',
                        ],
                        'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                        'disallowedOutputColumns': [
                            'string',
                        ],
                        'differentialPrivacy': {
                            'columns': [
                                {
                                    'name': 'string'
                                },
                            ]
                        },
                        'allowedResultReceivers': [
                            'string',
                        ],
                        'allowedAdditionalAnalyses': [
                            'string',
                        ]
                    },
                    'idMappingTable': {
                        'joinColumns': [
                            'string',
                        ],
                        'queryConstraints': [
                            {
                                'requireOverlap': {
                                    'columns': [
                                        'string',
                                    ]
                                }
                            },
                        ],
                        'dimensionColumns': [
                            'string',
                        ]
                    }
                }
            },
            'collaborationPolicy': {
                'v1': {
                    'list': {
                        'allowedResultReceivers': [
                            'string',
                        ],
                        'allowedAdditionalAnalyses': [
                            'string',
                        ]
                    },
                    'aggregation': {
                        'allowedResultReceivers': [
                            'string',
                        ],
                        'allowedAdditionalAnalyses': [
                            'string',
                        ]
                    },
                    'custom': {
                        'allowedResultReceivers': [
                            'string',
                        ],
                        'allowedAdditionalAnalyses': [
                            'string',
                        ]
                    }
                }
            },
            'consolidatedPolicy': {
                'v1': {
                    'list': {
                        'joinColumns': [
                            'string',
                        ],
                        'allowedJoinOperators': [
                            'OR'|'AND',
                        ],
                        'listColumns': [
                            'string',
                        ],
                        'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                        'allowedResultReceivers': [
                            'string',
                        ],
                        'allowedAdditionalAnalyses': [
                            'string',
                        ]
                    },
                    'aggregation': {
                        'aggregateColumns': [
                            {
                                'columnNames': [
                                    'string',
                                ],
                                'function': 'SUM'|'SUM_DISTINCT'|'COUNT'|'COUNT_DISTINCT'|'AVG'
                            },
                        ],
                        'joinColumns': [
                            'string',
                        ],
                        'joinRequired': 'QUERY_RUNNER',
                        'allowedJoinOperators': [
                            'OR'|'AND',
                        ],
                        'dimensionColumns': [
                            'string',
                        ],
                        'scalarFunctions': [
                            'ABS'|'CAST'|'CEILING'|'COALESCE'|'CONVERT'|'CURRENT_DATE'|'DATEADD'|'EXTRACT'|'FLOOR'|'GETDATE'|'LN'|'LOG'|'LOWER'|'ROUND'|'RTRIM'|'SQRT'|'SUBSTRING'|'TO_CHAR'|'TO_DATE'|'TO_NUMBER'|'TO_TIMESTAMP'|'TRIM'|'TRUNC'|'UPPER',
                        ],
                        'outputConstraints': [
                            {
                                'columnName': 'string',
                                'minimum': 123,
                                'type': 'COUNT_DISTINCT'
                            },
                        ],
                        'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                        'allowedResultReceivers': [
                            'string',
                        ],
                        'allowedAdditionalAnalyses': [
                            'string',
                        ]
                    },
                    'custom': {
                        'allowedAnalyses': [
                            'string',
                        ],
                        'allowedAnalysisProviders': [
                            'string',
                        ],
                        'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                        'disallowedOutputColumns': [
                            'string',
                        ],
                        'differentialPrivacy': {
                            'columns': [
                                {
                                    'name': 'string'
                                },
                            ]
                        },
                        'allowedResultReceivers': [
                            'string',
                        ],
                        'allowedAdditionalAnalyses': [
                            'string',
                        ]
                    }
                }
            }
        },
    ],
    'errors': [
        {
            'name': 'string',
            'type': 'AGGREGATION'|'LIST'|'CUSTOM'|'ID_MAPPING_TABLE',
            'code': 'string',
            'message': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • analysisRules (list) --

      The retrieved list of analysis rules.

      • (dict) --

        A specification about how data from the configured table can be used in a query.

        • collaborationId (string) --

          The unique ID for the associated collaboration.

        • type (string) --

          The type of analysis rule.

        • name (string) --

          The name for the analysis rule.

        • createTime (datetime) --

          The time the analysis rule was created.

        • updateTime (datetime) --

          The time the analysis rule was last updated.

        • policy (dict) --

          A policy that describes the associated data usage limitations.

          • v1 (dict) --

            Controls on the query specifications that can be run on configured table.

            • list (dict) --

              Analysis rule type that enables only list queries on a configured table.

              • joinColumns (list) --

                Columns that can be used to join a configured table with the table of the member who can query and other members' configured tables.

                • (string) --

              • allowedJoinOperators (list) --

                The logical operators (if any) that are to be used in an INNER JOIN match condition. Default is AND.

                • (string) --

              • listColumns (list) --

                Columns that can be listed in the output.

                • (string) --

              • additionalAnalyses (string) --

                An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.

            • aggregation (dict) --

              Analysis rule type that enables only aggregation queries on a configured table.

              • aggregateColumns (list) --

                The columns that query runners are allowed to use in aggregation queries.

                • (dict) --

                  Column in configured table that can be used in aggregate function in query.

                  • columnNames (list) --

                    Column names in configured table of aggregate columns.

                    • (string) --

                  • function (string) --

                    Aggregation function that can be applied to aggregate column in query.

              • joinColumns (list) --

                Columns in configured table that can be used in join statements and/or as aggregate columns. They can never be outputted directly.

                • (string) --

              • joinRequired (string) --

                Control that requires member who runs query to do a join with their configured table and/or other configured table in query.

              • allowedJoinOperators (list) --

                Which logical operators (if any) are to be used in an INNER JOIN match condition. Default is AND.

                • (string) --

              • dimensionColumns (list) --

                The columns that query runners are allowed to select, group by, or filter by.

                • (string) --

              • scalarFunctions (list) --

                Set of scalar functions that are allowed to be used on dimension columns and the output of aggregation of metrics.

                • (string) --

              • outputConstraints (list) --

                Columns that must meet a specific threshold value (after an aggregation function is applied to it) for each output row to be returned.

                • (dict) --

                  Constraint on query output removing output rows that do not meet a minimum number of distinct values of a specified column.

                  • columnName (string) --

                    Column in aggregation constraint for which there must be a minimum number of distinct values in an output row for it to be in the query output.

                  • minimum (integer) --

                    The minimum number of distinct values that an output row must be an aggregation of. Minimum threshold of distinct values for a specified column that must exist in an output row for it to be in the query output.

                  • type (string) --

                    The type of aggregation the constraint allows. The only valid value is currently COUNT_DISTINCT.

              • additionalAnalyses (string) --

                An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.

                The additionalAnalyses parameter is currently supported for the list analysis rule ( AnalysisRuleList) and the custom analysis rule ( AnalysisRuleCustom).

            • custom (dict) --

              Analysis rule type that enables custom SQL queries on a configured table.

              • allowedAnalyses (list) --

                The ARN of the analysis templates that are allowed by the custom analysis rule.

                • (string) --

              • allowedAnalysisProviders (list) --

                The IDs of the Amazon Web Services accounts that are allowed to query by the custom analysis rule. Required when allowedAnalyses is ANY_QUERY.

                • (string) --

              • additionalAnalyses (string) --

                An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.

              • disallowedOutputColumns (list) --

                A list of columns that aren't allowed to be shown in the query output.

                • (string) --

              • differentialPrivacy (dict) --

                The differential privacy configuration.

                • columns (list) --

                  The name of the column (such as user_id) that contains the unique identifier of your users whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

                  • (dict) --

                    Specifies the name of the column that contains the unique identifier of your users, whose privacy you want to protect.

                    • name (string) --

                      The name of the column, such as user_id, that contains the unique identifier of your users, whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

              • allowedResultReceivers (list) --

                The list of Amazon Web Services account IDs that are allowed to receive results from queries run on the configured table.

                • (string) --

              • allowedAdditionalAnalyses (list) --

                The list of allowed additional analyses for the custom analysis rule.

                • (string) --

            • idMappingTable (dict) --

              The ID mapping table.

              • joinColumns (list) --

                The columns that query runners are allowed to use in an INNER JOIN statement.

                • (string) --

              • queryConstraints (list) --

                The query constraints of the analysis rule ID mapping table.

                • (dict) --

                  Provides any necessary query constraint information.

                  • requireOverlap (dict) --

                    An array of column names that specifies which columns are required in the JOIN statement.

                    • columns (list) --

                      The columns that are required to overlap.

                      • (string) --

              • dimensionColumns (list) --

                The columns that query runners are allowed to select, group by, or filter by.

                • (string) --

        • collaborationPolicy (dict) --

          Controls on the query specifications that can be run on an associated configured table.

          • v1 (dict) --

            The policy for the configured table association analysis rule.

            • list (dict) --

              Analysis rule type that enables only list queries on a configured table.

              • allowedResultReceivers (list) --

                The list of collaboration members who are allowed to receive results of queries run with this configured table.

                • (string) --

              • allowedAdditionalAnalyses (list) --

                The list of resources or wildcards (ARNs) that are allowed to perform additional analysis on query output.

                • (string) --

            • aggregation (dict) --

              Analysis rule type that enables only aggregation queries on a configured table.

              • allowedResultReceivers (list) --

                The list of collaboration members who are allowed to receive results of queries run with this configured table.

                • (string) --

              • allowedAdditionalAnalyses (list) --

                The list of resources or wildcards (ARNs) that are allowed to perform additional analysis on query output.

                The allowedAdditionalAnalyses parameter is currently supported for the list analysis rule ( AnalysisRuleList) and the custom analysis rule ( AnalysisRuleCustom).

                • (string) --

            • custom (dict) --

              Analysis rule type that enables the table owner to approve custom SQL queries on their configured tables. It supports differential privacy.

              • allowedResultReceivers (list) --

                The list of collaboration members who are allowed to receive results of queries run with this configured table.

                • (string) --

              • allowedAdditionalAnalyses (list) --

                The list of resources or wildcards (ARNs) that are allowed to perform additional analysis on query output.

                • (string) --

        • consolidatedPolicy (dict) --

          The consolidated policy for the analysis rule.

          • v1 (dict) --

            The consolidated policy version 1.

            • list (dict) --

              The list of consolidated policies.

              • joinColumns (list) --

                The columns to join on.

                • (string) --

              • allowedJoinOperators (list) --

                The allowed join operators in the consolidated policy list.

                • (string) --

              • listColumns (list) --

                The columns in the consolidated policy list.

                • (string) --

              • additionalAnalyses (string) --

                Additional analyses for the consolidated policy list.

              • allowedResultReceivers (list) --

                The allowed result receivers.

                • (string) --

              • allowedAdditionalAnalyses (list) --

                The additional analyses allowed by the consolidated policy list.

                • (string) --

            • aggregation (dict) --

              The aggregation setting for the consolidated policy.

              • aggregateColumns (list) --

                Aggregate columns in consolidated policy aggregation.

                • (dict) --

                  Column in configured table that can be used in aggregate function in query.

                  • columnNames (list) --

                    Column names in configured table of aggregate columns.

                    • (string) --

                  • function (string) --

                    Aggregation function that can be applied to aggregate column in query.

              • joinColumns (list) --

                The columns to join on.

                • (string) --

              • joinRequired (string) --

                Join required

              • allowedJoinOperators (list) --

                The allowed join operators.

                • (string) --

              • dimensionColumns (list) --

                The dimension columns of the consolidated policy aggregation.

                • (string) --

              • scalarFunctions (list) --

                The scalar functions.

                • (string) --

              • outputConstraints (list) --

                The output constraints of the consolidated policy aggregation.

                • (dict) --

                  Constraint on query output removing output rows that do not meet a minimum number of distinct values of a specified column.

                  • columnName (string) --

                    Column in aggregation constraint for which there must be a minimum number of distinct values in an output row for it to be in the query output.

                  • minimum (integer) --

                    The minimum number of distinct values that an output row must be an aggregation of. Minimum threshold of distinct values for a specified column that must exist in an output row for it to be in the query output.

                  • type (string) --

                    The type of aggregation the constraint allows. The only valid value is currently COUNT_DISTINCT.

              • additionalAnalyses (string) --

                Additional analyses for the consolidated policy aggregation.

              • allowedResultReceivers (list) --

                The allowed result receivers.

                • (string) --

              • allowedAdditionalAnalyses (list) --

                The additional analyses allowed by the consolidated policy aggregation.

                • (string) --

            • custom (dict) --

              Custom policy

              • allowedAnalyses (list) --

                The allowed analyses.

                • (string) --

              • allowedAnalysisProviders (list) --

                The allowed analysis providers.

                • (string) --

              • additionalAnalyses (string) --

                Additional analyses for the consolidated policy.

              • disallowedOutputColumns (list) --

                Disallowed output columns

                • (string) --

              • differentialPrivacy (dict) --

                Specifies the unique identifier for your users.

                • columns (list) --

                  The name of the column (such as user_id) that contains the unique identifier of your users whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

                  • (dict) --

                    Specifies the name of the column that contains the unique identifier of your users, whose privacy you want to protect.

                    • name (string) --

                      The name of the column, such as user_id, that contains the unique identifier of your users, whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

              • allowedResultReceivers (list) --

                The allowed result receivers.

                • (string) --

              • allowedAdditionalAnalyses (list) --

                The additional analyses allowed by the consolidated policy.

                • (string) --

    • errors (list) --

      Error reasons for schemas that could not be retrieved. One error is returned for every schema that could not be retrieved.

      • (dict) --

        An error that describes why a schema could not be fetched.

        • name (string) --

          An error name for the error.

        • type (string) --

          The analysis rule type.

        • code (string) --

          An error code for the error.

        • message (string) --

          A description of why the call failed.

CreateConfiguredTableAnalysisRule (updated) Link ¶
Changes (request, response)
Request
{'analysisRulePolicy': {'v1': {'custom': {'allowedAdditionalAnalyses': ['string'],
                                          'allowedResultReceivers': ['string']}}}}
Response
{'analysisRule': {'policy': {'v1': {'custom': {'allowedAdditionalAnalyses': ['string'],
                                               'allowedResultReceivers': ['string']}}}}}

Creates a new analysis rule for a configured table. Currently, only one analysis rule can be created for a given configured table.

See also: AWS API Documentation

Request Syntax

client.create_configured_table_analysis_rule(
    configuredTableIdentifier='string',
    analysisRuleType='AGGREGATION'|'LIST'|'CUSTOM',
    analysisRulePolicy={
        'v1': {
            'list': {
                'joinColumns': [
                    'string',
                ],
                'allowedJoinOperators': [
                    'OR'|'AND',
                ],
                'listColumns': [
                    'string',
                ],
                'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED'
            },
            'aggregation': {
                'aggregateColumns': [
                    {
                        'columnNames': [
                            'string',
                        ],
                        'function': 'SUM'|'SUM_DISTINCT'|'COUNT'|'COUNT_DISTINCT'|'AVG'
                    },
                ],
                'joinColumns': [
                    'string',
                ],
                'joinRequired': 'QUERY_RUNNER',
                'allowedJoinOperators': [
                    'OR'|'AND',
                ],
                'dimensionColumns': [
                    'string',
                ],
                'scalarFunctions': [
                    'ABS'|'CAST'|'CEILING'|'COALESCE'|'CONVERT'|'CURRENT_DATE'|'DATEADD'|'EXTRACT'|'FLOOR'|'GETDATE'|'LN'|'LOG'|'LOWER'|'ROUND'|'RTRIM'|'SQRT'|'SUBSTRING'|'TO_CHAR'|'TO_DATE'|'TO_NUMBER'|'TO_TIMESTAMP'|'TRIM'|'TRUNC'|'UPPER',
                ],
                'outputConstraints': [
                    {
                        'columnName': 'string',
                        'minimum': 123,
                        'type': 'COUNT_DISTINCT'
                    },
                ],
                'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED'
            },
            'custom': {
                'allowedAnalyses': [
                    'string',
                ],
                'allowedAnalysisProviders': [
                    'string',
                ],
                'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                'disallowedOutputColumns': [
                    'string',
                ],
                'differentialPrivacy': {
                    'columns': [
                        {
                            'name': 'string'
                        },
                    ]
                },
                'allowedResultReceivers': [
                    'string',
                ],
                'allowedAdditionalAnalyses': [
                    'string',
                ]
            }
        }
    }
)
type configuredTableIdentifier:

string

param configuredTableIdentifier:

[REQUIRED]

The identifier for the configured table to create the analysis rule for. Currently accepts the configured table ID.

type analysisRuleType:

string

param analysisRuleType:

[REQUIRED]

The type of analysis rule.

type analysisRulePolicy:

dict

param analysisRulePolicy:

[REQUIRED]

The analysis rule policy that was created for the configured table.

  • v1 (dict) --

    Controls on the query specifications that can be run on a configured table.

    • list (dict) --

      Analysis rule type that enables only list queries on a configured table.

      • joinColumns (list) -- [REQUIRED]

        Columns that can be used to join a configured table with the table of the member who can query and other members' configured tables.

        • (string) --

      • allowedJoinOperators (list) --

        The logical operators (if any) that are to be used in an INNER JOIN match condition. Default is AND.

        • (string) --

      • listColumns (list) -- [REQUIRED]

        Columns that can be listed in the output.

        • (string) --

      • additionalAnalyses (string) --

        An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.

    • aggregation (dict) --

      Analysis rule type that enables only aggregation queries on a configured table.

      • aggregateColumns (list) -- [REQUIRED]

        The columns that query runners are allowed to use in aggregation queries.

        • (dict) --

          Column in configured table that can be used in aggregate function in query.

          • columnNames (list) -- [REQUIRED]

            Column names in configured table of aggregate columns.

            • (string) --

          • function (string) -- [REQUIRED]

            Aggregation function that can be applied to aggregate column in query.

      • joinColumns (list) -- [REQUIRED]

        Columns in configured table that can be used in join statements and/or as aggregate columns. They can never be outputted directly.

        • (string) --

      • joinRequired (string) --

        Control that requires member who runs query to do a join with their configured table and/or other configured table in query.

      • allowedJoinOperators (list) --

        Which logical operators (if any) are to be used in an INNER JOIN match condition. Default is AND.

        • (string) --

      • dimensionColumns (list) -- [REQUIRED]

        The columns that query runners are allowed to select, group by, or filter by.

        • (string) --

      • scalarFunctions (list) -- [REQUIRED]

        Set of scalar functions that are allowed to be used on dimension columns and the output of aggregation of metrics.

        • (string) --

      • outputConstraints (list) -- [REQUIRED]

        Columns that must meet a specific threshold value (after an aggregation function is applied to it) for each output row to be returned.

        • (dict) --

          Constraint on query output removing output rows that do not meet a minimum number of distinct values of a specified column.

          • columnName (string) -- [REQUIRED]

            Column in aggregation constraint for which there must be a minimum number of distinct values in an output row for it to be in the query output.

          • minimum (integer) -- [REQUIRED]

            The minimum number of distinct values that an output row must be an aggregation of. Minimum threshold of distinct values for a specified column that must exist in an output row for it to be in the query output.

          • type (string) -- [REQUIRED]

            The type of aggregation the constraint allows. The only valid value is currently COUNT_DISTINCT.

      • additionalAnalyses (string) --

        An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.

        The additionalAnalyses parameter is currently supported for the list analysis rule ( AnalysisRuleList) and the custom analysis rule ( AnalysisRuleCustom).

    • custom (dict) --

      A type of analysis rule that enables the table owner to approve custom SQL queries on their configured tables. It supports differential privacy.

      • allowedAnalyses (list) -- [REQUIRED]

        The ARN of the analysis templates that are allowed by the custom analysis rule.

        • (string) --

      • allowedAnalysisProviders (list) --

        The IDs of the Amazon Web Services accounts that are allowed to query by the custom analysis rule. Required when allowedAnalyses is ANY_QUERY.

        • (string) --

      • additionalAnalyses (string) --

        An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.

      • disallowedOutputColumns (list) --

        A list of columns that aren't allowed to be shown in the query output.

        • (string) --

      • differentialPrivacy (dict) --

        The differential privacy configuration.

        • columns (list) -- [REQUIRED]

          The name of the column (such as user_id) that contains the unique identifier of your users whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

          • (dict) --

            Specifies the name of the column that contains the unique identifier of your users, whose privacy you want to protect.

            • name (string) -- [REQUIRED]

              The name of the column, such as user_id, that contains the unique identifier of your users, whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

      • allowedResultReceivers (list) --

        The list of Amazon Web Services account IDs that are allowed to receive results from queries run on the configured table.

        • (string) --

      • allowedAdditionalAnalyses (list) --

        The list of allowed additional analyses for the custom analysis rule.

        • (string) --

rtype:

dict

returns:

Response Syntax

{
    'analysisRule': {
        'configuredTableId': 'string',
        'configuredTableArn': 'string',
        'policy': {
            'v1': {
                'list': {
                    'joinColumns': [
                        'string',
                    ],
                    'allowedJoinOperators': [
                        'OR'|'AND',
                    ],
                    'listColumns': [
                        'string',
                    ],
                    'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED'
                },
                'aggregation': {
                    'aggregateColumns': [
                        {
                            'columnNames': [
                                'string',
                            ],
                            'function': 'SUM'|'SUM_DISTINCT'|'COUNT'|'COUNT_DISTINCT'|'AVG'
                        },
                    ],
                    'joinColumns': [
                        'string',
                    ],
                    'joinRequired': 'QUERY_RUNNER',
                    'allowedJoinOperators': [
                        'OR'|'AND',
                    ],
                    'dimensionColumns': [
                        'string',
                    ],
                    'scalarFunctions': [
                        'ABS'|'CAST'|'CEILING'|'COALESCE'|'CONVERT'|'CURRENT_DATE'|'DATEADD'|'EXTRACT'|'FLOOR'|'GETDATE'|'LN'|'LOG'|'LOWER'|'ROUND'|'RTRIM'|'SQRT'|'SUBSTRING'|'TO_CHAR'|'TO_DATE'|'TO_NUMBER'|'TO_TIMESTAMP'|'TRIM'|'TRUNC'|'UPPER',
                    ],
                    'outputConstraints': [
                        {
                            'columnName': 'string',
                            'minimum': 123,
                            'type': 'COUNT_DISTINCT'
                        },
                    ],
                    'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED'
                },
                'custom': {
                    'allowedAnalyses': [
                        'string',
                    ],
                    'allowedAnalysisProviders': [
                        'string',
                    ],
                    'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                    'disallowedOutputColumns': [
                        'string',
                    ],
                    'differentialPrivacy': {
                        'columns': [
                            {
                                'name': 'string'
                            },
                        ]
                    },
                    'allowedResultReceivers': [
                        'string',
                    ],
                    'allowedAdditionalAnalyses': [
                        'string',
                    ]
                }
            }
        },
        'type': 'AGGREGATION'|'LIST'|'CUSTOM',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1)
    }
}

Response Structure

  • (dict) --

    • analysisRule (dict) --

      The analysis rule that was created for the configured table.

      • configuredTableId (string) --

        The unique ID for the configured table.

      • configuredTableArn (string) --

        The unique ARN for the configured table.

      • policy (dict) --

        The policy that controls SQL query rules.

        • v1 (dict) --

          Controls on the query specifications that can be run on a configured table.

          • list (dict) --

            Analysis rule type that enables only list queries on a configured table.

            • joinColumns (list) --

              Columns that can be used to join a configured table with the table of the member who can query and other members' configured tables.

              • (string) --

            • allowedJoinOperators (list) --

              The logical operators (if any) that are to be used in an INNER JOIN match condition. Default is AND.

              • (string) --

            • listColumns (list) --

              Columns that can be listed in the output.

              • (string) --

            • additionalAnalyses (string) --

              An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.

          • aggregation (dict) --

            Analysis rule type that enables only aggregation queries on a configured table.

            • aggregateColumns (list) --

              The columns that query runners are allowed to use in aggregation queries.

              • (dict) --

                Column in configured table that can be used in aggregate function in query.

                • columnNames (list) --

                  Column names in configured table of aggregate columns.

                  • (string) --

                • function (string) --

                  Aggregation function that can be applied to aggregate column in query.

            • joinColumns (list) --

              Columns in configured table that can be used in join statements and/or as aggregate columns. They can never be outputted directly.

              • (string) --

            • joinRequired (string) --

              Control that requires member who runs query to do a join with their configured table and/or other configured table in query.

            • allowedJoinOperators (list) --

              Which logical operators (if any) are to be used in an INNER JOIN match condition. Default is AND.

              • (string) --

            • dimensionColumns (list) --

              The columns that query runners are allowed to select, group by, or filter by.

              • (string) --

            • scalarFunctions (list) --

              Set of scalar functions that are allowed to be used on dimension columns and the output of aggregation of metrics.

              • (string) --

            • outputConstraints (list) --

              Columns that must meet a specific threshold value (after an aggregation function is applied to it) for each output row to be returned.

              • (dict) --

                Constraint on query output removing output rows that do not meet a minimum number of distinct values of a specified column.

                • columnName (string) --

                  Column in aggregation constraint for which there must be a minimum number of distinct values in an output row for it to be in the query output.

                • minimum (integer) --

                  The minimum number of distinct values that an output row must be an aggregation of. Minimum threshold of distinct values for a specified column that must exist in an output row for it to be in the query output.

                • type (string) --

                  The type of aggregation the constraint allows. The only valid value is currently COUNT_DISTINCT.

            • additionalAnalyses (string) --

              An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.

              The additionalAnalyses parameter is currently supported for the list analysis rule ( AnalysisRuleList) and the custom analysis rule ( AnalysisRuleCustom).

          • custom (dict) --

            A type of analysis rule that enables the table owner to approve custom SQL queries on their configured tables. It supports differential privacy.

            • allowedAnalyses (list) --

              The ARN of the analysis templates that are allowed by the custom analysis rule.

              • (string) --

            • allowedAnalysisProviders (list) --

              The IDs of the Amazon Web Services accounts that are allowed to query by the custom analysis rule. Required when allowedAnalyses is ANY_QUERY.

              • (string) --

            • additionalAnalyses (string) --

              An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.

            • disallowedOutputColumns (list) --

              A list of columns that aren't allowed to be shown in the query output.

              • (string) --

            • differentialPrivacy (dict) --

              The differential privacy configuration.

              • columns (list) --

                The name of the column (such as user_id) that contains the unique identifier of your users whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

                • (dict) --

                  Specifies the name of the column that contains the unique identifier of your users, whose privacy you want to protect.

                  • name (string) --

                    The name of the column, such as user_id, that contains the unique identifier of your users, whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

            • allowedResultReceivers (list) --

              The list of Amazon Web Services account IDs that are allowed to receive results from queries run on the configured table.

              • (string) --

            • allowedAdditionalAnalyses (list) --

              The list of allowed additional analyses for the custom analysis rule.

              • (string) --

      • type (string) --

        The type of configured table analysis rule.

      • createTime (datetime) --

        The time the configured table analysis rule was created.

      • updateTime (datetime) --

        The time the configured table analysis rule was last updated.

CreateConfiguredTableAssociation (updated) Link ¶
Changes (response)
{'configuredTableAssociation': {'childResources': [{'ownerAccountId': 'string',
                                                    'resourceId': 'string',
                                                    'resourceName': 'string',
                                                    'resourceStatus': 'CREATED '
                                                                      '| '
                                                                      'POPULATE_STARTED '
                                                                      '| '
                                                                      'POPULATE_SUCCESS '
                                                                      '| '
                                                                      'POPULATE_FAILED '
                                                                      '| '
                                                                      'DISALLOWED_BY_DATA_PROVIDER '
                                                                      '| '
                                                                      'BASE_TABLE_REMOVED '
                                                                      '| '
                                                                      'RETENTION_PERIOD_EXPIRED',
                                                    'resourceType': 'INTERMEDIATE_TABLE'}]}}

Creates a configured table association. A configured table association links a configured table with a collaboration.

See also: AWS API Documentation

Request Syntax

client.create_configured_table_association(
    name='string',
    description='string',
    membershipIdentifier='string',
    configuredTableIdentifier='string',
    roleArn='string',
    tags={
        'string': 'string'
    }
)
type name:

string

param name:

[REQUIRED]

The name of the configured table association. This name is used to query the underlying configured table.

type description:

string

param description:

A description for the configured table association.

type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

A unique identifier for one of your memberships for a collaboration. The configured table is associated to the collaboration that this membership belongs to. Currently accepts a membership ID.

type configuredTableIdentifier:

string

param configuredTableIdentifier:

[REQUIRED]

A unique identifier for the configured table to be associated to. Currently accepts a configured table ID.

type roleArn:

string

param roleArn:

[REQUIRED]

The service will assume this role to access catalog metadata and query the table.

type tags:

dict

param tags:

An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource.

  • (string) --

    • (string) --

rtype:

dict

returns:

Response Syntax

{
    'configuredTableAssociation': {
        'arn': 'string',
        'id': 'string',
        'configuredTableId': 'string',
        'configuredTableArn': 'string',
        'membershipId': 'string',
        'membershipArn': 'string',
        'roleArn': 'string',
        'name': 'string',
        'description': 'string',
        'analysisRuleTypes': [
            'AGGREGATION'|'LIST'|'CUSTOM',
        ],
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'childResources': [
            {
                'resourceId': 'string',
                'resourceType': 'INTERMEDIATE_TABLE',
                'resourceName': 'string',
                'ownerAccountId': 'string',
                'resourceStatus': 'CREATED'|'POPULATE_STARTED'|'POPULATE_SUCCESS'|'POPULATE_FAILED'|'DISALLOWED_BY_DATA_PROVIDER'|'BASE_TABLE_REMOVED'|'RETENTION_PERIOD_EXPIRED'
            },
        ]
    }
}

Response Structure

  • (dict) --

    • configuredTableAssociation (dict) --

      The configured table association.

      • arn (string) --

        The unique ARN for the configured table association.

      • id (string) --

        The unique ID for the configured table association.

      • configuredTableId (string) --

        The unique ID for the configured table that the association refers to.

      • configuredTableArn (string) --

        The unique ARN for the configured table that the association refers to.

      • membershipId (string) --

        The unique ID for the membership this configured table association belongs to.

      • membershipArn (string) --

        The unique ARN for the membership this configured table association belongs to.

      • roleArn (string) --

        The service will assume this role to access catalog metadata and query the table.

      • name (string) --

        The name of the configured table association, in lowercase. The table is identified by this name when running protected queries against the underlying data.

      • description (string) --

        A description of the configured table association.

      • analysisRuleTypes (list) --

        The analysis rule types for the configured table association.

        • (string) --

      • createTime (datetime) --

        The time the configured table association was created.

      • updateTime (datetime) --

        The time the configured table association was last updated.

      • childResources (list) --

        The child resources that depend on this configured table association.

        • (dict) --

          Contains information about a child resource of a given resource in a collaboration.

          • resourceId (string) --

            The unique identifier of the child resource.

          • resourceType (string) --

            The type of the child resource.

          • resourceName (string) --

            The name of the child resource.

          • ownerAccountId (string) --

            The Amazon Web Services account ID of the member who owns the child resource.

          • resourceStatus (string) --

            The current status of the child resource.

CreateIdMappingTable (updated) Link ¶
Changes (response)
{'idMappingTable': {'childResources': [{'ownerAccountId': 'string',
                                        'resourceId': 'string',
                                        'resourceName': 'string',
                                        'resourceStatus': 'CREATED | '
                                                          'POPULATE_STARTED | '
                                                          'POPULATE_SUCCESS | '
                                                          'POPULATE_FAILED | '
                                                          'DISALLOWED_BY_DATA_PROVIDER '
                                                          '| '
                                                          'BASE_TABLE_REMOVED '
                                                          '| '
                                                          'RETENTION_PERIOD_EXPIRED',
                                        'resourceType': 'INTERMEDIATE_TABLE'}]}}

Creates an ID mapping table.

See also: AWS API Documentation

Request Syntax

client.create_id_mapping_table(
    membershipIdentifier='string',
    name='string',
    description='string',
    inputReferenceConfig={
        'inputReferenceArn': 'string',
        'manageResourcePolicies': True|False
    },
    tags={
        'string': 'string'
    },
    kmsKeyArn='string'
)
type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

The unique identifier of the membership that contains the ID mapping table.

type name:

string

param name:

[REQUIRED]

A name for the ID mapping table.

type description:

string

param description:

A description of the ID mapping table.

type inputReferenceConfig:

dict

param inputReferenceConfig:

[REQUIRED]

The input reference configuration needed to create the ID mapping table.

  • inputReferenceArn (string) -- [REQUIRED]

    The Amazon Resource Name (ARN) of the referenced resource in Entity Resolution. Valid values are ID mapping workflow ARNs.

  • manageResourcePolicies (boolean) -- [REQUIRED]

    When TRUE, Clean Rooms manages permissions for the ID mapping table resource.

    When FALSE, the resource owner manages permissions for the ID mapping table resource.

type tags:

dict

param tags:

An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource.

  • (string) --

    • (string) --

type kmsKeyArn:

string

param kmsKeyArn:

The Amazon Resource Name (ARN) of the Amazon Web Services KMS key. This value is used to encrypt the mapping table data that is stored by Clean Rooms.

rtype:

dict

returns:

Response Syntax

{
    'idMappingTable': {
        'id': 'string',
        'arn': 'string',
        'inputReferenceConfig': {
            'inputReferenceArn': 'string',
            'manageResourcePolicies': True|False
        },
        'membershipId': 'string',
        'membershipArn': 'string',
        'collaborationId': 'string',
        'collaborationArn': 'string',
        'description': 'string',
        'name': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'inputReferenceProperties': {
            'idMappingTableInputSource': [
                {
                    'idNamespaceAssociationId': 'string',
                    'type': 'SOURCE'|'TARGET'
                },
            ]
        },
        'kmsKeyArn': 'string',
        'childResources': [
            {
                'resourceId': 'string',
                'resourceType': 'INTERMEDIATE_TABLE',
                'resourceName': 'string',
                'ownerAccountId': 'string',
                'resourceStatus': 'CREATED'|'POPULATE_STARTED'|'POPULATE_SUCCESS'|'POPULATE_FAILED'|'DISALLOWED_BY_DATA_PROVIDER'|'BASE_TABLE_REMOVED'|'RETENTION_PERIOD_EXPIRED'
            },
        ]
    }
}

Response Structure

  • (dict) --

    • idMappingTable (dict) --

      The ID mapping table that was created.

      • id (string) --

        The unique identifier of the ID mapping table.

      • arn (string) --

        The Amazon Resource Name (ARN) of the ID mapping table.

      • inputReferenceConfig (dict) --

        The input reference configuration for the ID mapping table.

        • inputReferenceArn (string) --

          The Amazon Resource Name (ARN) of the referenced resource in Entity Resolution. Valid values are ID mapping workflow ARNs.

        • manageResourcePolicies (boolean) --

          When TRUE, Clean Rooms manages permissions for the ID mapping table resource.

          When FALSE, the resource owner manages permissions for the ID mapping table resource.

      • membershipId (string) --

        The unique identifier of the membership resource for the ID mapping table.

      • membershipArn (string) --

        The Amazon Resource Name (ARN) of the membership resource for the ID mapping table.

      • collaborationId (string) --

        The unique identifier of the collaboration that contains this ID mapping table.

      • collaborationArn (string) --

        The Amazon Resource Name (ARN) of the collaboration that contains this ID mapping table.

      • description (string) --

        The description of the ID mapping table.

      • name (string) --

        The name of the ID mapping table.

      • createTime (datetime) --

        The time at which the ID mapping table was created.

      • updateTime (datetime) --

        The most recent time at which the ID mapping table was updated.

      • inputReferenceProperties (dict) --

        The input reference properties for the ID mapping table.

        • idMappingTableInputSource (list) --

          The input source of the ID mapping table.

          • (dict) --

            The input source of the ID mapping table.

            • idNamespaceAssociationId (string) --

              The unique identifier of the ID namespace association.

            • type (string) --

              The type of the input source of the ID mapping table.

      • kmsKeyArn (string) --

        The Amazon Resource Name (ARN) of the Amazon Web Services KMS key.

      • childResources (list) --

        The child resources that depend on this ID mapping table.

        • (dict) --

          Contains information about a child resource of a given resource in a collaboration.

          • resourceId (string) --

            The unique identifier of the child resource.

          • resourceType (string) --

            The type of the child resource.

          • resourceName (string) --

            The name of the child resource.

          • ownerAccountId (string) --

            The Amazon Web Services account ID of the member who owns the child resource.

          • resourceStatus (string) --

            The current status of the child resource.

GetConfiguredTableAnalysisRule (updated) Link ¶
Changes (response)
{'analysisRule': {'policy': {'v1': {'custom': {'allowedAdditionalAnalyses': ['string'],
                                               'allowedResultReceivers': ['string']}}}}}

Retrieves a configured table analysis rule.

See also: AWS API Documentation

Request Syntax

client.get_configured_table_analysis_rule(
    configuredTableIdentifier='string',
    analysisRuleType='AGGREGATION'|'LIST'|'CUSTOM'
)
type configuredTableIdentifier:

string

param configuredTableIdentifier:

[REQUIRED]

The unique identifier for the configured table to retrieve. Currently accepts the configured table ID.

type analysisRuleType:

string

param analysisRuleType:

[REQUIRED]

The analysis rule to be retrieved. Configured table analysis rules are uniquely identified by their configured table identifier and analysis rule type.

rtype:

dict

returns:

Response Syntax

{
    'analysisRule': {
        'configuredTableId': 'string',
        'configuredTableArn': 'string',
        'policy': {
            'v1': {
                'list': {
                    'joinColumns': [
                        'string',
                    ],
                    'allowedJoinOperators': [
                        'OR'|'AND',
                    ],
                    'listColumns': [
                        'string',
                    ],
                    'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED'
                },
                'aggregation': {
                    'aggregateColumns': [
                        {
                            'columnNames': [
                                'string',
                            ],
                            'function': 'SUM'|'SUM_DISTINCT'|'COUNT'|'COUNT_DISTINCT'|'AVG'
                        },
                    ],
                    'joinColumns': [
                        'string',
                    ],
                    'joinRequired': 'QUERY_RUNNER',
                    'allowedJoinOperators': [
                        'OR'|'AND',
                    ],
                    'dimensionColumns': [
                        'string',
                    ],
                    'scalarFunctions': [
                        'ABS'|'CAST'|'CEILING'|'COALESCE'|'CONVERT'|'CURRENT_DATE'|'DATEADD'|'EXTRACT'|'FLOOR'|'GETDATE'|'LN'|'LOG'|'LOWER'|'ROUND'|'RTRIM'|'SQRT'|'SUBSTRING'|'TO_CHAR'|'TO_DATE'|'TO_NUMBER'|'TO_TIMESTAMP'|'TRIM'|'TRUNC'|'UPPER',
                    ],
                    'outputConstraints': [
                        {
                            'columnName': 'string',
                            'minimum': 123,
                            'type': 'COUNT_DISTINCT'
                        },
                    ],
                    'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED'
                },
                'custom': {
                    'allowedAnalyses': [
                        'string',
                    ],
                    'allowedAnalysisProviders': [
                        'string',
                    ],
                    'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                    'disallowedOutputColumns': [
                        'string',
                    ],
                    'differentialPrivacy': {
                        'columns': [
                            {
                                'name': 'string'
                            },
                        ]
                    },
                    'allowedResultReceivers': [
                        'string',
                    ],
                    'allowedAdditionalAnalyses': [
                        'string',
                    ]
                }
            }
        },
        'type': 'AGGREGATION'|'LIST'|'CUSTOM',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1)
    }
}

Response Structure

  • (dict) --

    • analysisRule (dict) --

      The entire analysis rule output.

      • configuredTableId (string) --

        The unique ID for the configured table.

      • configuredTableArn (string) --

        The unique ARN for the configured table.

      • policy (dict) --

        The policy that controls SQL query rules.

        • v1 (dict) --

          Controls on the query specifications that can be run on a configured table.

          • list (dict) --

            Analysis rule type that enables only list queries on a configured table.

            • joinColumns (list) --

              Columns that can be used to join a configured table with the table of the member who can query and other members' configured tables.

              • (string) --

            • allowedJoinOperators (list) --

              The logical operators (if any) that are to be used in an INNER JOIN match condition. Default is AND.

              • (string) --

            • listColumns (list) --

              Columns that can be listed in the output.

              • (string) --

            • additionalAnalyses (string) --

              An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.

          • aggregation (dict) --

            Analysis rule type that enables only aggregation queries on a configured table.

            • aggregateColumns (list) --

              The columns that query runners are allowed to use in aggregation queries.

              • (dict) --

                Column in configured table that can be used in aggregate function in query.

                • columnNames (list) --

                  Column names in configured table of aggregate columns.

                  • (string) --

                • function (string) --

                  Aggregation function that can be applied to aggregate column in query.

            • joinColumns (list) --

              Columns in configured table that can be used in join statements and/or as aggregate columns. They can never be outputted directly.

              • (string) --

            • joinRequired (string) --

              Control that requires member who runs query to do a join with their configured table and/or other configured table in query.

            • allowedJoinOperators (list) --

              Which logical operators (if any) are to be used in an INNER JOIN match condition. Default is AND.

              • (string) --

            • dimensionColumns (list) --

              The columns that query runners are allowed to select, group by, or filter by.

              • (string) --

            • scalarFunctions (list) --

              Set of scalar functions that are allowed to be used on dimension columns and the output of aggregation of metrics.

              • (string) --

            • outputConstraints (list) --

              Columns that must meet a specific threshold value (after an aggregation function is applied to it) for each output row to be returned.

              • (dict) --

                Constraint on query output removing output rows that do not meet a minimum number of distinct values of a specified column.

                • columnName (string) --

                  Column in aggregation constraint for which there must be a minimum number of distinct values in an output row for it to be in the query output.

                • minimum (integer) --

                  The minimum number of distinct values that an output row must be an aggregation of. Minimum threshold of distinct values for a specified column that must exist in an output row for it to be in the query output.

                • type (string) --

                  The type of aggregation the constraint allows. The only valid value is currently COUNT_DISTINCT.

            • additionalAnalyses (string) --

              An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.

              The additionalAnalyses parameter is currently supported for the list analysis rule ( AnalysisRuleList) and the custom analysis rule ( AnalysisRuleCustom).

          • custom (dict) --

            A type of analysis rule that enables the table owner to approve custom SQL queries on their configured tables. It supports differential privacy.

            • allowedAnalyses (list) --

              The ARN of the analysis templates that are allowed by the custom analysis rule.

              • (string) --

            • allowedAnalysisProviders (list) --

              The IDs of the Amazon Web Services accounts that are allowed to query by the custom analysis rule. Required when allowedAnalyses is ANY_QUERY.

              • (string) --

            • additionalAnalyses (string) --

              An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.

            • disallowedOutputColumns (list) --

              A list of columns that aren't allowed to be shown in the query output.

              • (string) --

            • differentialPrivacy (dict) --

              The differential privacy configuration.

              • columns (list) --

                The name of the column (such as user_id) that contains the unique identifier of your users whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

                • (dict) --

                  Specifies the name of the column that contains the unique identifier of your users, whose privacy you want to protect.

                  • name (string) --

                    The name of the column, such as user_id, that contains the unique identifier of your users, whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

            • allowedResultReceivers (list) --

              The list of Amazon Web Services account IDs that are allowed to receive results from queries run on the configured table.

              • (string) --

            • allowedAdditionalAnalyses (list) --

              The list of allowed additional analyses for the custom analysis rule.

              • (string) --

      • type (string) --

        The type of configured table analysis rule.

      • createTime (datetime) --

        The time the configured table analysis rule was created.

      • updateTime (datetime) --

        The time the configured table analysis rule was last updated.

GetConfiguredTableAssociation (updated) Link ¶
Changes (response)
{'configuredTableAssociation': {'childResources': [{'ownerAccountId': 'string',
                                                    'resourceId': 'string',
                                                    'resourceName': 'string',
                                                    'resourceStatus': 'CREATED '
                                                                      '| '
                                                                      'POPULATE_STARTED '
                                                                      '| '
                                                                      'POPULATE_SUCCESS '
                                                                      '| '
                                                                      'POPULATE_FAILED '
                                                                      '| '
                                                                      'DISALLOWED_BY_DATA_PROVIDER '
                                                                      '| '
                                                                      'BASE_TABLE_REMOVED '
                                                                      '| '
                                                                      'RETENTION_PERIOD_EXPIRED',
                                                    'resourceType': 'INTERMEDIATE_TABLE'}]}}

Retrieves a configured table association.

See also: AWS API Documentation

Request Syntax

client.get_configured_table_association(
    configuredTableAssociationIdentifier='string',
    membershipIdentifier='string'
)
type configuredTableAssociationIdentifier:

string

param configuredTableAssociationIdentifier:

[REQUIRED]

The unique ID for the configured table association to retrieve. Currently accepts the configured table ID.

type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

A unique identifier for the membership that the configured table association belongs to. Currently accepts the membership ID.

rtype:

dict

returns:

Response Syntax

{
    'configuredTableAssociation': {
        'arn': 'string',
        'id': 'string',
        'configuredTableId': 'string',
        'configuredTableArn': 'string',
        'membershipId': 'string',
        'membershipArn': 'string',
        'roleArn': 'string',
        'name': 'string',
        'description': 'string',
        'analysisRuleTypes': [
            'AGGREGATION'|'LIST'|'CUSTOM',
        ],
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'childResources': [
            {
                'resourceId': 'string',
                'resourceType': 'INTERMEDIATE_TABLE',
                'resourceName': 'string',
                'ownerAccountId': 'string',
                'resourceStatus': 'CREATED'|'POPULATE_STARTED'|'POPULATE_SUCCESS'|'POPULATE_FAILED'|'DISALLOWED_BY_DATA_PROVIDER'|'BASE_TABLE_REMOVED'|'RETENTION_PERIOD_EXPIRED'
            },
        ]
    }
}

Response Structure

  • (dict) --

    • configuredTableAssociation (dict) --

      The entire configured table association object.

      • arn (string) --

        The unique ARN for the configured table association.

      • id (string) --

        The unique ID for the configured table association.

      • configuredTableId (string) --

        The unique ID for the configured table that the association refers to.

      • configuredTableArn (string) --

        The unique ARN for the configured table that the association refers to.

      • membershipId (string) --

        The unique ID for the membership this configured table association belongs to.

      • membershipArn (string) --

        The unique ARN for the membership this configured table association belongs to.

      • roleArn (string) --

        The service will assume this role to access catalog metadata and query the table.

      • name (string) --

        The name of the configured table association, in lowercase. The table is identified by this name when running protected queries against the underlying data.

      • description (string) --

        A description of the configured table association.

      • analysisRuleTypes (list) --

        The analysis rule types for the configured table association.

        • (string) --

      • createTime (datetime) --

        The time the configured table association was created.

      • updateTime (datetime) --

        The time the configured table association was last updated.

      • childResources (list) --

        The child resources that depend on this configured table association.

        • (dict) --

          Contains information about a child resource of a given resource in a collaboration.

          • resourceId (string) --

            The unique identifier of the child resource.

          • resourceType (string) --

            The type of the child resource.

          • resourceName (string) --

            The name of the child resource.

          • ownerAccountId (string) --

            The Amazon Web Services account ID of the member who owns the child resource.

          • resourceStatus (string) --

            The current status of the child resource.

GetIdMappingTable (updated) Link ¶
Changes (response)
{'idMappingTable': {'childResources': [{'ownerAccountId': 'string',
                                        'resourceId': 'string',
                                        'resourceName': 'string',
                                        'resourceStatus': 'CREATED | '
                                                          'POPULATE_STARTED | '
                                                          'POPULATE_SUCCESS | '
                                                          'POPULATE_FAILED | '
                                                          'DISALLOWED_BY_DATA_PROVIDER '
                                                          '| '
                                                          'BASE_TABLE_REMOVED '
                                                          '| '
                                                          'RETENTION_PERIOD_EXPIRED',
                                        'resourceType': 'INTERMEDIATE_TABLE'}]}}

Retrieves an ID mapping table.

See also: AWS API Documentation

Request Syntax

client.get_id_mapping_table(
    idMappingTableIdentifier='string',
    membershipIdentifier='string'
)
type idMappingTableIdentifier:

string

param idMappingTableIdentifier:

[REQUIRED]

The unique identifier of the ID mapping table identifier that you want to retrieve.

type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

The unique identifier of the membership that contains the ID mapping table that you want to retrieve.

rtype:

dict

returns:

Response Syntax

{
    'idMappingTable': {
        'id': 'string',
        'arn': 'string',
        'inputReferenceConfig': {
            'inputReferenceArn': 'string',
            'manageResourcePolicies': True|False
        },
        'membershipId': 'string',
        'membershipArn': 'string',
        'collaborationId': 'string',
        'collaborationArn': 'string',
        'description': 'string',
        'name': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'inputReferenceProperties': {
            'idMappingTableInputSource': [
                {
                    'idNamespaceAssociationId': 'string',
                    'type': 'SOURCE'|'TARGET'
                },
            ]
        },
        'kmsKeyArn': 'string',
        'childResources': [
            {
                'resourceId': 'string',
                'resourceType': 'INTERMEDIATE_TABLE',
                'resourceName': 'string',
                'ownerAccountId': 'string',
                'resourceStatus': 'CREATED'|'POPULATE_STARTED'|'POPULATE_SUCCESS'|'POPULATE_FAILED'|'DISALLOWED_BY_DATA_PROVIDER'|'BASE_TABLE_REMOVED'|'RETENTION_PERIOD_EXPIRED'
            },
        ]
    }
}

Response Structure

  • (dict) --

    • idMappingTable (dict) --

      The ID mapping table that you requested.

      • id (string) --

        The unique identifier of the ID mapping table.

      • arn (string) --

        The Amazon Resource Name (ARN) of the ID mapping table.

      • inputReferenceConfig (dict) --

        The input reference configuration for the ID mapping table.

        • inputReferenceArn (string) --

          The Amazon Resource Name (ARN) of the referenced resource in Entity Resolution. Valid values are ID mapping workflow ARNs.

        • manageResourcePolicies (boolean) --

          When TRUE, Clean Rooms manages permissions for the ID mapping table resource.

          When FALSE, the resource owner manages permissions for the ID mapping table resource.

      • membershipId (string) --

        The unique identifier of the membership resource for the ID mapping table.

      • membershipArn (string) --

        The Amazon Resource Name (ARN) of the membership resource for the ID mapping table.

      • collaborationId (string) --

        The unique identifier of the collaboration that contains this ID mapping table.

      • collaborationArn (string) --

        The Amazon Resource Name (ARN) of the collaboration that contains this ID mapping table.

      • description (string) --

        The description of the ID mapping table.

      • name (string) --

        The name of the ID mapping table.

      • createTime (datetime) --

        The time at which the ID mapping table was created.

      • updateTime (datetime) --

        The most recent time at which the ID mapping table was updated.

      • inputReferenceProperties (dict) --

        The input reference properties for the ID mapping table.

        • idMappingTableInputSource (list) --

          The input source of the ID mapping table.

          • (dict) --

            The input source of the ID mapping table.

            • idNamespaceAssociationId (string) --

              The unique identifier of the ID namespace association.

            • type (string) --

              The type of the input source of the ID mapping table.

      • kmsKeyArn (string) --

        The Amazon Resource Name (ARN) of the Amazon Web Services KMS key.

      • childResources (list) --

        The child resources that depend on this ID mapping table.

        • (dict) --

          Contains information about a child resource of a given resource in a collaboration.

          • resourceId (string) --

            The unique identifier of the child resource.

          • resourceType (string) --

            The type of the child resource.

          • resourceName (string) --

            The name of the child resource.

          • ownerAccountId (string) --

            The Amazon Web Services account ID of the member who owns the child resource.

          • resourceStatus (string) --

            The current status of the child resource.

GetProtectedQuery (updated) Link ¶
Changes (response)
{'protectedQuery': {'resultConfiguration': {'outputConfiguration': {'intermediateTable': {'arn': 'string',
                                                                                          'id': 'string',
                                                                                          'name': 'string'}}}}}

Returns query processing metadata.

See also: AWS API Documentation

Request Syntax

client.get_protected_query(
    membershipIdentifier='string',
    protectedQueryIdentifier='string'
)
type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

The identifier for a membership in a protected query instance.

type protectedQueryIdentifier:

string

param protectedQueryIdentifier:

[REQUIRED]

The identifier for a protected query instance.

rtype:

dict

returns:

Response Syntax

{
    'protectedQuery': {
        'id': 'string',
        'membershipId': 'string',
        'membershipArn': 'string',
        'createTime': datetime(2015, 1, 1),
        'sqlParameters': {
            'queryString': 'string',
            'analysisTemplateArn': 'string',
            'parameters': {
                'string': 'string'
            }
        },
        'status': 'SUBMITTED'|'STARTED'|'CANCELLED'|'CANCELLING'|'FAILED'|'SUCCESS'|'TIMED_OUT',
        'resultConfiguration': {
            'outputConfiguration': {
                's3': {
                    'resultFormat': 'CSV'|'PARQUET',
                    'bucket': 'string',
                    'keyPrefix': 'string',
                    'singleFileOutput': True|False
                },
                'member': {
                    'accountId': 'string'
                },
                'distribute': {
                    'locations': [
                        {
                            's3': {
                                'resultFormat': 'CSV'|'PARQUET',
                                'bucket': 'string',
                                'keyPrefix': 'string',
                                'singleFileOutput': True|False
                            },
                            'member': {
                                'accountId': 'string'
                            }
                        },
                    ]
                },
                'intermediateTable': {
                    'id': 'string',
                    'arn': 'string',
                    'name': 'string'
                }
            }
        },
        'statistics': {
            'totalDurationInMillis': 123,
            'billedResourceUtilization': {
                'units': 123.0
            }
        },
        'result': {
            'output': {
                's3': {
                    'location': 'string'
                },
                'memberList': [
                    {
                        'accountId': 'string'
                    },
                ],
                'distribute': {
                    's3': {
                        'location': 'string'
                    },
                    'memberList': [
                        {
                            'accountId': 'string'
                        },
                    ]
                }
            }
        },
        'error': {
            'message': 'string',
            'code': 'string'
        },
        'differentialPrivacy': {
            'sensitivityParameters': [
                {
                    'aggregationType': 'AVG'|'COUNT'|'COUNT_DISTINCT'|'SUM'|'STDDEV',
                    'aggregationExpression': 'string',
                    'userContributionLimit': 123,
                    'minColumnValue': ...,
                    'maxColumnValue': ...
                },
            ]
        },
        'computeConfiguration': {
            'worker': {
                'type': 'CR.1X'|'CR.4X',
                'number': 123,
                'properties': {
                    'spark': {
                        'string': 'string'
                    }
                }
            }
        },
        'queryComputePayerAccountId': 'string'
    }
}

Response Structure

  • (dict) --

    • protectedQuery (dict) --

      The query processing metadata.

      • id (string) --

        The identifier for a protected query instance.

      • membershipId (string) --

        The identifier for the membership.

      • membershipArn (string) --

        The ARN of the membership.

      • createTime (datetime) --

        The time at which the protected query was created.

      • sqlParameters (dict) --

        The protected query SQL parameters.

        • queryString (string) --

          The query string to be submitted.

        • analysisTemplateArn (string) --

          The Amazon Resource Name (ARN) associated with the analysis template within a collaboration.

        • parameters (dict) --

          The protected query SQL parameters.

          • (string) --

            • (string) --

      • status (string) --

        The status of the query.

      • resultConfiguration (dict) --

        Contains any details needed to write the query results.

        • outputConfiguration (dict) --

          Configuration for protected query results.

          • s3 (dict) --

            Required configuration for a protected query with an s3 output type.

            • resultFormat (string) --

              Intended file format of the result.

            • bucket (string) --

              The S3 bucket to unload the protected query results.

            • keyPrefix (string) --

              The S3 prefix to unload the protected query results.

            • singleFileOutput (boolean) --

              Indicates whether files should be output as a single file ( TRUE) or output as multiple files ( FALSE). This parameter is only supported for analyses with the Spark analytics engine.

          • member (dict) --

            Required configuration for a protected query with a member output type.

            • accountId (string) --

              The unique identifier for the account.

          • distribute (dict) --

            Required configuration for a protected query with a distribute output type.

            • locations (list) --

              A list of locations where you want to distribute the protected query results. Each location must specify either an S3 destination or a collaboration member destination.

              • (dict) --

                Specifies where you'll distribute the results of your protected query. You must configure either an S3 destination or a collaboration member destination.

                • s3 (dict) --

                  Contains the configuration to write the query results to S3.

                  • resultFormat (string) --

                    Intended file format of the result.

                  • bucket (string) --

                    The S3 bucket to unload the protected query results.

                  • keyPrefix (string) --

                    The S3 prefix to unload the protected query results.

                  • singleFileOutput (boolean) --

                    Indicates whether files should be output as a single file ( TRUE) or output as multiple files ( FALSE). This parameter is only supported for analyses with the Spark analytics engine.

                • member (dict) --

                  Contains configuration details for the protected query member output.

                  • accountId (string) --

                    The unique identifier for the account.

          • intermediateTable (dict) --

            The intermediate table output configuration, present when the protected query was triggered by a populate operation.

            • id (string) --

              The unique identifier of the intermediate table.

            • arn (string) --

              The Amazon Resource Name (ARN) of the intermediate table.

            • name (string) --

              The name of the intermediate table.

      • statistics (dict) --

        Statistics about protected query execution.

        • totalDurationInMillis (integer) --

          The duration of the protected query, from creation until query completion, in milliseconds.

        • billedResourceUtilization (dict) --

          The billed resource utilization.

          • units (float) --

            The number of Clean Rooms Processing Unit (CRPU) hours that have been billed.

      • result (dict) --

        The result of the protected query.

        • output (dict) --

          The output of the protected query.

          • s3 (dict) --

            If present, the output for a protected query with an S3 output type.

            • location (string) --

              The S3 location of the result.

          • memberList (list) --

            The list of member Amazon Web Services account(s) that received the results of the query.

            • (dict) --

              Details about the member who received the query result.

              • accountId (string) --

                The Amazon Web Services account ID of the member in the collaboration who can receive results for the query.

          • distribute (dict) --

            Contains output information for protected queries that use a distribute output type. This output type lets you send query results to multiple locations - either to S3 or to collaboration members.

            • s3 (dict) --

              Contains output information for protected queries with an S3 output type.

              • location (string) --

                The S3 location of the result.

            • memberList (list) --

              Contains the output results for each member location specified in the distribute output configuration. Each entry provides details about the result distribution to a specific collaboration member.

              • (dict) --

                Details about the member who received the query result.

                • accountId (string) --

                  The Amazon Web Services account ID of the member in the collaboration who can receive results for the query.

      • error (dict) --

        An error thrown by the protected query.

        • message (string) --

          A description of why the query failed.

        • code (string) --

          An error code for the error.

      • differentialPrivacy (dict) --

        The sensitivity parameters of the differential privacy results of the protected query.

        • sensitivityParameters (list) --

          Provides the sensitivity parameters that you can use to better understand the total amount of noise in query results.

          • (dict) --

            Provides the sensitivity parameters.

            • aggregationType (string) --

              The type of aggregation function that was run.

            • aggregationExpression (string) --

              The aggregation expression that was run.

            • userContributionLimit (integer) --

              The maximum number of rows contributed by a user in a SQL query.

            • minColumnValue (float) --

              The lower bound of the aggregation expression.

            • maxColumnValue (float) --

              The upper bound of the aggregation expression.

      • computeConfiguration (dict) --

        The compute configuration for the protected query.

        • worker (dict) --

          The worker configuration for the compute environment.

          • type (string) --

            The worker compute configuration type.

          • number (integer) --

            The number of workers.

            SQL queries support a minimum value of 2 and a maximum value of 400.

            PySpark jobs support a minimum value of 4 and a maximum value of 128.

          • properties (dict) --

            The configuration properties for the worker compute environment. These properties allow you to customize the compute settings for your Clean Rooms workloads.

            • spark (dict) --

              The Spark configuration properties for SQL and PySpark workloads. This map contains key-value pairs that configure Apache Spark settings to optimize performance for your data processing jobs. You can specify up to 50 Spark properties, with each key being 1-200 characters and each value being 0-500 characters. These properties allow you to adjust compute capacity for large datasets and complex workloads.

              • (string) --

                • (string) --

      • queryComputePayerAccountId (string) --

        The account ID of the member that pays for the query compute costs.

GetSchema (updated) Link ¶
Changes (response)
{'schema': {'schemaStatusDetails': {'reasons': {'code': {'INTERMEDIATE_TABLE_ANALYSIS_RULE_MISSING',
                                                         'INTERMEDIATE_TABLE_BASE_TABLE_REMOVED',
                                                         'INTERMEDIATE_TABLE_DISALLOWED_BY_DATA_PROVIDER',
                                                         'INTERMEDIATE_TABLE_INHERITED_CONSTRAINTS_VIOLATED',
                                                         'INTERMEDIATE_TABLE_NOT_POPULATED',
                                                         'INTERMEDIATE_TABLE_RETENTION_PERIOD_EXPIRED'}}},
            'schemaTypeProperties': {'configuredTableAssociation': {'configuredTableAssociationId': 'string'},
                                     'idMappingTable': {'idMappingTableId': 'string'},
                                     'intermediateTable': {'intermediateTableId': 'string'}},
            'type': {'INTERMEDIATE_TABLE'}}}

Retrieves the schema for a relation within a collaboration.

See also: AWS API Documentation

Request Syntax

client.get_schema(
    collaborationIdentifier='string',
    name='string'
)
type collaborationIdentifier:

string

param collaborationIdentifier:

[REQUIRED]

A unique identifier for the collaboration that the schema belongs to. Currently accepts a collaboration ID.

type name:

string

param name:

[REQUIRED]

The name of the relation to retrieve the schema for.

rtype:

dict

returns:

Response Syntax

{
    'schema': {
        'columns': [
            {
                'name': 'string',
                'type': 'string'
            },
        ],
        'partitionKeys': [
            {
                'name': 'string',
                'type': 'string'
            },
        ],
        'analysisRuleTypes': [
            'AGGREGATION'|'LIST'|'CUSTOM'|'ID_MAPPING_TABLE',
        ],
        'analysisMethod': 'DIRECT_QUERY'|'DIRECT_JOB'|'MULTIPLE',
        'selectedAnalysisMethods': [
            'DIRECT_QUERY'|'DIRECT_JOB',
        ],
        'creatorAccountId': 'string',
        'name': 'string',
        'collaborationId': 'string',
        'collaborationArn': 'string',
        'description': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'type': 'TABLE'|'ID_MAPPING_TABLE'|'INTERMEDIATE_TABLE',
        'schemaStatusDetails': [
            {
                'status': 'READY'|'NOT_READY',
                'reasons': [
                    {
                        'code': 'ANALYSIS_RULE_MISSING'|'ANALYSIS_TEMPLATES_NOT_CONFIGURED'|'ANALYSIS_PROVIDERS_NOT_CONFIGURED'|'DIFFERENTIAL_PRIVACY_POLICY_NOT_CONFIGURED'|'ID_MAPPING_TABLE_NOT_POPULATED'|'COLLABORATION_ANALYSIS_RULE_NOT_CONFIGURED'|'ADDITIONAL_ANALYSES_NOT_CONFIGURED'|'RESULT_RECEIVERS_NOT_CONFIGURED'|'ADDITIONAL_ANALYSES_NOT_ALLOWED'|'RESULT_RECEIVERS_NOT_ALLOWED'|'ANALYSIS_RULE_TYPES_NOT_COMPATIBLE'|'INTERMEDIATE_TABLE_NOT_POPULATED'|'INTERMEDIATE_TABLE_ANALYSIS_RULE_MISSING'|'INTERMEDIATE_TABLE_BASE_TABLE_REMOVED'|'INTERMEDIATE_TABLE_INHERITED_CONSTRAINTS_VIOLATED'|'INTERMEDIATE_TABLE_DISALLOWED_BY_DATA_PROVIDER'|'INTERMEDIATE_TABLE_RETENTION_PERIOD_EXPIRED',
                        'message': 'string'
                    },
                ],
                'analysisRuleType': 'AGGREGATION'|'LIST'|'CUSTOM'|'ID_MAPPING_TABLE',
                'configurations': [
                    'DIFFERENTIAL_PRIVACY',
                ],
                'analysisType': 'DIRECT_ANALYSIS'|'ADDITIONAL_ANALYSIS'
            },
        ],
        'resourceArn': 'string',
        'schemaTypeProperties': {
            'idMappingTable': {
                'idMappingTableInputSource': [
                    {
                        'idNamespaceAssociationId': 'string',
                        'type': 'SOURCE'|'TARGET'
                    },
                ],
                'idMappingTableId': 'string'
            },
            'intermediateTable': {
                'intermediateTableId': 'string'
            },
            'configuredTableAssociation': {
                'configuredTableAssociationId': 'string'
            }
        }
    }
}

Response Structure

  • (dict) --

    • schema (dict) --

      The entire schema object.

      • columns (list) --

        The columns for the relation that this schema represents.

        • (dict) --

          A column within a schema relation, derived from the underlying table.

          • name (string) --

            The name of the column.

          • type (string) --

            The type of the column.

      • partitionKeys (list) --

        The partition keys for the dataset underlying this schema.

        • (dict) --

          A column within a schema relation, derived from the underlying table.

          • name (string) --

            The name of the column.

          • type (string) --

            The type of the column.

      • analysisRuleTypes (list) --

        The analysis rule types that are associated with the schema. Currently, only one entry is present.

        • (string) --

      • analysisMethod (string) --

        The analysis method for the schema.

        DIRECT_QUERY allows SQL queries to be run directly on this table.

        DIRECT_JOB allows PySpark jobs to be run directly on this table.

        MULTIPLE allows both SQL queries and PySpark jobs to be run directly on this table.

      • selectedAnalysisMethods (list) --

        The selected analysis methods for the schema.

        • (string) --

      • creatorAccountId (string) --

        The unique account ID for the Amazon Web Services account that owns the schema.

      • name (string) --

        A name for the schema. The schema relation is referred to by this name when queried by a protected query.

      • collaborationId (string) --

        The unique ID for the collaboration that the schema belongs to.

      • collaborationArn (string) --

        The unique Amazon Resource Name (ARN) for the collaboration that the schema belongs to.

      • description (string) --

        A description for the schema.

      • createTime (datetime) --

        The time at which the schema was created.

      • updateTime (datetime) --

        The most recent time at which the schema was updated.

      • type (string) --

        The type of schema.

      • schemaStatusDetails (list) --

        Details about the status of the schema. Currently, only one entry is present.

        • (dict) --

          Information about the schema status.

          A status of READY means that based on the schema analysis rule, queries of the given analysis rule type are properly configured to run queries on this schema.

          • status (string) --

            The status of the schema, indicating if it is ready to query.

          • reasons (list) --

            The reasons why the schema status is set to its current state.

            • (dict) --

              A reason why the schema status is set to its current value.

              • code (string) --

                The schema status reason code.

              • message (string) --

                An explanation of the schema status reason code.

          • analysisRuleType (string) --

            The analysis rule type for which the schema status has been evaluated.

          • configurations (list) --

            The configuration details of the schema analysis rule for the given type.

            • (string) --

          • analysisType (string) --

            The type of analysis that can be performed on the schema.

            A schema can have an analysisType of DIRECT_ANALYSIS, ADDITIONAL_ANALYSIS_FOR_AUDIENCE_GENERATION, or both.

      • resourceArn (string) --

        The Amazon Resource Name (ARN) of the schema resource.

      • schemaTypeProperties (dict) --

        The schema type properties.

        • idMappingTable (dict) --

          The ID mapping table for the schema type properties.

          • idMappingTableInputSource (list) --

            Defines which ID namespace associations are used to create the ID mapping table.

            • (dict) --

              The input source of the ID mapping table.

              • idNamespaceAssociationId (string) --

                The unique identifier of the ID namespace association.

              • type (string) --

                The type of the input source of the ID mapping table.

          • idMappingTableId (string) --

            The unique identifier of the ID mapping table.

        • intermediateTable (dict) --

          The schema type properties for an intermediate table.

          • intermediateTableId (string) --

            The unique identifier of the intermediate table.

        • configuredTableAssociation (dict) --

          The schema type properties for a configured table association.

          • configuredTableAssociationId (string) --

            The unique identifier of the configured table association.

GetSchemaAnalysisRule (updated) Link ¶
Changes (response)
{'analysisRule': {'policy': {'v1': {'custom': {'allowedAdditionalAnalyses': ['string'],
                                               'allowedResultReceivers': ['string']}}}}}

Retrieves a schema analysis rule.

See also: AWS API Documentation

Request Syntax

client.get_schema_analysis_rule(
    collaborationIdentifier='string',
    name='string',
    type='AGGREGATION'|'LIST'|'CUSTOM'|'ID_MAPPING_TABLE'
)
type collaborationIdentifier:

string

param collaborationIdentifier:

[REQUIRED]

A unique identifier for the collaboration that the schema belongs to. Currently accepts a collaboration ID.

type name:

string

param name:

[REQUIRED]

The name of the schema to retrieve the analysis rule for.

type type:

string

param type:

[REQUIRED]

The type of the schema analysis rule to retrieve. Schema analysis rules are uniquely identified by a combination of the collaboration, the schema name, and their type.

rtype:

dict

returns:

Response Syntax

{
    'analysisRule': {
        'collaborationId': 'string',
        'type': 'AGGREGATION'|'LIST'|'CUSTOM'|'ID_MAPPING_TABLE',
        'name': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'policy': {
            'v1': {
                'list': {
                    'joinColumns': [
                        'string',
                    ],
                    'allowedJoinOperators': [
                        'OR'|'AND',
                    ],
                    'listColumns': [
                        'string',
                    ],
                    'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED'
                },
                'aggregation': {
                    'aggregateColumns': [
                        {
                            'columnNames': [
                                'string',
                            ],
                            'function': 'SUM'|'SUM_DISTINCT'|'COUNT'|'COUNT_DISTINCT'|'AVG'
                        },
                    ],
                    'joinColumns': [
                        'string',
                    ],
                    'joinRequired': 'QUERY_RUNNER',
                    'allowedJoinOperators': [
                        'OR'|'AND',
                    ],
                    'dimensionColumns': [
                        'string',
                    ],
                    'scalarFunctions': [
                        'ABS'|'CAST'|'CEILING'|'COALESCE'|'CONVERT'|'CURRENT_DATE'|'DATEADD'|'EXTRACT'|'FLOOR'|'GETDATE'|'LN'|'LOG'|'LOWER'|'ROUND'|'RTRIM'|'SQRT'|'SUBSTRING'|'TO_CHAR'|'TO_DATE'|'TO_NUMBER'|'TO_TIMESTAMP'|'TRIM'|'TRUNC'|'UPPER',
                    ],
                    'outputConstraints': [
                        {
                            'columnName': 'string',
                            'minimum': 123,
                            'type': 'COUNT_DISTINCT'
                        },
                    ],
                    'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED'
                },
                'custom': {
                    'allowedAnalyses': [
                        'string',
                    ],
                    'allowedAnalysisProviders': [
                        'string',
                    ],
                    'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                    'disallowedOutputColumns': [
                        'string',
                    ],
                    'differentialPrivacy': {
                        'columns': [
                            {
                                'name': 'string'
                            },
                        ]
                    },
                    'allowedResultReceivers': [
                        'string',
                    ],
                    'allowedAdditionalAnalyses': [
                        'string',
                    ]
                },
                'idMappingTable': {
                    'joinColumns': [
                        'string',
                    ],
                    'queryConstraints': [
                        {
                            'requireOverlap': {
                                'columns': [
                                    'string',
                                ]
                            }
                        },
                    ],
                    'dimensionColumns': [
                        'string',
                    ]
                }
            }
        },
        'collaborationPolicy': {
            'v1': {
                'list': {
                    'allowedResultReceivers': [
                        'string',
                    ],
                    'allowedAdditionalAnalyses': [
                        'string',
                    ]
                },
                'aggregation': {
                    'allowedResultReceivers': [
                        'string',
                    ],
                    'allowedAdditionalAnalyses': [
                        'string',
                    ]
                },
                'custom': {
                    'allowedResultReceivers': [
                        'string',
                    ],
                    'allowedAdditionalAnalyses': [
                        'string',
                    ]
                }
            }
        },
        'consolidatedPolicy': {
            'v1': {
                'list': {
                    'joinColumns': [
                        'string',
                    ],
                    'allowedJoinOperators': [
                        'OR'|'AND',
                    ],
                    'listColumns': [
                        'string',
                    ],
                    'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                    'allowedResultReceivers': [
                        'string',
                    ],
                    'allowedAdditionalAnalyses': [
                        'string',
                    ]
                },
                'aggregation': {
                    'aggregateColumns': [
                        {
                            'columnNames': [
                                'string',
                            ],
                            'function': 'SUM'|'SUM_DISTINCT'|'COUNT'|'COUNT_DISTINCT'|'AVG'
                        },
                    ],
                    'joinColumns': [
                        'string',
                    ],
                    'joinRequired': 'QUERY_RUNNER',
                    'allowedJoinOperators': [
                        'OR'|'AND',
                    ],
                    'dimensionColumns': [
                        'string',
                    ],
                    'scalarFunctions': [
                        'ABS'|'CAST'|'CEILING'|'COALESCE'|'CONVERT'|'CURRENT_DATE'|'DATEADD'|'EXTRACT'|'FLOOR'|'GETDATE'|'LN'|'LOG'|'LOWER'|'ROUND'|'RTRIM'|'SQRT'|'SUBSTRING'|'TO_CHAR'|'TO_DATE'|'TO_NUMBER'|'TO_TIMESTAMP'|'TRIM'|'TRUNC'|'UPPER',
                    ],
                    'outputConstraints': [
                        {
                            'columnName': 'string',
                            'minimum': 123,
                            'type': 'COUNT_DISTINCT'
                        },
                    ],
                    'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                    'allowedResultReceivers': [
                        'string',
                    ],
                    'allowedAdditionalAnalyses': [
                        'string',
                    ]
                },
                'custom': {
                    'allowedAnalyses': [
                        'string',
                    ],
                    'allowedAnalysisProviders': [
                        'string',
                    ],
                    'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                    'disallowedOutputColumns': [
                        'string',
                    ],
                    'differentialPrivacy': {
                        'columns': [
                            {
                                'name': 'string'
                            },
                        ]
                    },
                    'allowedResultReceivers': [
                        'string',
                    ],
                    'allowedAdditionalAnalyses': [
                        'string',
                    ]
                }
            }
        }
    }
}

Response Structure

  • (dict) --

    • analysisRule (dict) --

      A specification about how data from the configured table can be used.

      • collaborationId (string) --

        The unique ID for the associated collaboration.

      • type (string) --

        The type of analysis rule.

      • name (string) --

        The name for the analysis rule.

      • createTime (datetime) --

        The time the analysis rule was created.

      • updateTime (datetime) --

        The time the analysis rule was last updated.

      • policy (dict) --

        A policy that describes the associated data usage limitations.

        • v1 (dict) --

          Controls on the query specifications that can be run on configured table.

          • list (dict) --

            Analysis rule type that enables only list queries on a configured table.

            • joinColumns (list) --

              Columns that can be used to join a configured table with the table of the member who can query and other members' configured tables.

              • (string) --

            • allowedJoinOperators (list) --

              The logical operators (if any) that are to be used in an INNER JOIN match condition. Default is AND.

              • (string) --

            • listColumns (list) --

              Columns that can be listed in the output.

              • (string) --

            • additionalAnalyses (string) --

              An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.

          • aggregation (dict) --

            Analysis rule type that enables only aggregation queries on a configured table.

            • aggregateColumns (list) --

              The columns that query runners are allowed to use in aggregation queries.

              • (dict) --

                Column in configured table that can be used in aggregate function in query.

                • columnNames (list) --

                  Column names in configured table of aggregate columns.

                  • (string) --

                • function (string) --

                  Aggregation function that can be applied to aggregate column in query.

            • joinColumns (list) --

              Columns in configured table that can be used in join statements and/or as aggregate columns. They can never be outputted directly.

              • (string) --

            • joinRequired (string) --

              Control that requires member who runs query to do a join with their configured table and/or other configured table in query.

            • allowedJoinOperators (list) --

              Which logical operators (if any) are to be used in an INNER JOIN match condition. Default is AND.

              • (string) --

            • dimensionColumns (list) --

              The columns that query runners are allowed to select, group by, or filter by.

              • (string) --

            • scalarFunctions (list) --

              Set of scalar functions that are allowed to be used on dimension columns and the output of aggregation of metrics.

              • (string) --

            • outputConstraints (list) --

              Columns that must meet a specific threshold value (after an aggregation function is applied to it) for each output row to be returned.

              • (dict) --

                Constraint on query output removing output rows that do not meet a minimum number of distinct values of a specified column.

                • columnName (string) --

                  Column in aggregation constraint for which there must be a minimum number of distinct values in an output row for it to be in the query output.

                • minimum (integer) --

                  The minimum number of distinct values that an output row must be an aggregation of. Minimum threshold of distinct values for a specified column that must exist in an output row for it to be in the query output.

                • type (string) --

                  The type of aggregation the constraint allows. The only valid value is currently COUNT_DISTINCT.

            • additionalAnalyses (string) --

              An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.

              The additionalAnalyses parameter is currently supported for the list analysis rule ( AnalysisRuleList) and the custom analysis rule ( AnalysisRuleCustom).

          • custom (dict) --

            Analysis rule type that enables custom SQL queries on a configured table.

            • allowedAnalyses (list) --

              The ARN of the analysis templates that are allowed by the custom analysis rule.

              • (string) --

            • allowedAnalysisProviders (list) --

              The IDs of the Amazon Web Services accounts that are allowed to query by the custom analysis rule. Required when allowedAnalyses is ANY_QUERY.

              • (string) --

            • additionalAnalyses (string) --

              An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.

            • disallowedOutputColumns (list) --

              A list of columns that aren't allowed to be shown in the query output.

              • (string) --

            • differentialPrivacy (dict) --

              The differential privacy configuration.

              • columns (list) --

                The name of the column (such as user_id) that contains the unique identifier of your users whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

                • (dict) --

                  Specifies the name of the column that contains the unique identifier of your users, whose privacy you want to protect.

                  • name (string) --

                    The name of the column, such as user_id, that contains the unique identifier of your users, whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

            • allowedResultReceivers (list) --

              The list of Amazon Web Services account IDs that are allowed to receive results from queries run on the configured table.

              • (string) --

            • allowedAdditionalAnalyses (list) --

              The list of allowed additional analyses for the custom analysis rule.

              • (string) --

          • idMappingTable (dict) --

            The ID mapping table.

            • joinColumns (list) --

              The columns that query runners are allowed to use in an INNER JOIN statement.

              • (string) --

            • queryConstraints (list) --

              The query constraints of the analysis rule ID mapping table.

              • (dict) --

                Provides any necessary query constraint information.

                • requireOverlap (dict) --

                  An array of column names that specifies which columns are required in the JOIN statement.

                  • columns (list) --

                    The columns that are required to overlap.

                    • (string) --

            • dimensionColumns (list) --

              The columns that query runners are allowed to select, group by, or filter by.

              • (string) --

      • collaborationPolicy (dict) --

        Controls on the query specifications that can be run on an associated configured table.

        • v1 (dict) --

          The policy for the configured table association analysis rule.

          • list (dict) --

            Analysis rule type that enables only list queries on a configured table.

            • allowedResultReceivers (list) --

              The list of collaboration members who are allowed to receive results of queries run with this configured table.

              • (string) --

            • allowedAdditionalAnalyses (list) --

              The list of resources or wildcards (ARNs) that are allowed to perform additional analysis on query output.

              • (string) --

          • aggregation (dict) --

            Analysis rule type that enables only aggregation queries on a configured table.

            • allowedResultReceivers (list) --

              The list of collaboration members who are allowed to receive results of queries run with this configured table.

              • (string) --

            • allowedAdditionalAnalyses (list) --

              The list of resources or wildcards (ARNs) that are allowed to perform additional analysis on query output.

              The allowedAdditionalAnalyses parameter is currently supported for the list analysis rule ( AnalysisRuleList) and the custom analysis rule ( AnalysisRuleCustom).

              • (string) --

          • custom (dict) --

            Analysis rule type that enables the table owner to approve custom SQL queries on their configured tables. It supports differential privacy.

            • allowedResultReceivers (list) --

              The list of collaboration members who are allowed to receive results of queries run with this configured table.

              • (string) --

            • allowedAdditionalAnalyses (list) --

              The list of resources or wildcards (ARNs) that are allowed to perform additional analysis on query output.

              • (string) --

      • consolidatedPolicy (dict) --

        The consolidated policy for the analysis rule.

        • v1 (dict) --

          The consolidated policy version 1.

          • list (dict) --

            The list of consolidated policies.

            • joinColumns (list) --

              The columns to join on.

              • (string) --

            • allowedJoinOperators (list) --

              The allowed join operators in the consolidated policy list.

              • (string) --

            • listColumns (list) --

              The columns in the consolidated policy list.

              • (string) --

            • additionalAnalyses (string) --

              Additional analyses for the consolidated policy list.

            • allowedResultReceivers (list) --

              The allowed result receivers.

              • (string) --

            • allowedAdditionalAnalyses (list) --

              The additional analyses allowed by the consolidated policy list.

              • (string) --

          • aggregation (dict) --

            The aggregation setting for the consolidated policy.

            • aggregateColumns (list) --

              Aggregate columns in consolidated policy aggregation.

              • (dict) --

                Column in configured table that can be used in aggregate function in query.

                • columnNames (list) --

                  Column names in configured table of aggregate columns.

                  • (string) --

                • function (string) --

                  Aggregation function that can be applied to aggregate column in query.

            • joinColumns (list) --

              The columns to join on.

              • (string) --

            • joinRequired (string) --

              Join required

            • allowedJoinOperators (list) --

              The allowed join operators.

              • (string) --

            • dimensionColumns (list) --

              The dimension columns of the consolidated policy aggregation.

              • (string) --

            • scalarFunctions (list) --

              The scalar functions.

              • (string) --

            • outputConstraints (list) --

              The output constraints of the consolidated policy aggregation.

              • (dict) --

                Constraint on query output removing output rows that do not meet a minimum number of distinct values of a specified column.

                • columnName (string) --

                  Column in aggregation constraint for which there must be a minimum number of distinct values in an output row for it to be in the query output.

                • minimum (integer) --

                  The minimum number of distinct values that an output row must be an aggregation of. Minimum threshold of distinct values for a specified column that must exist in an output row for it to be in the query output.

                • type (string) --

                  The type of aggregation the constraint allows. The only valid value is currently COUNT_DISTINCT.

            • additionalAnalyses (string) --

              Additional analyses for the consolidated policy aggregation.

            • allowedResultReceivers (list) --

              The allowed result receivers.

              • (string) --

            • allowedAdditionalAnalyses (list) --

              The additional analyses allowed by the consolidated policy aggregation.

              • (string) --

          • custom (dict) --

            Custom policy

            • allowedAnalyses (list) --

              The allowed analyses.

              • (string) --

            • allowedAnalysisProviders (list) --

              The allowed analysis providers.

              • (string) --

            • additionalAnalyses (string) --

              Additional analyses for the consolidated policy.

            • disallowedOutputColumns (list) --

              Disallowed output columns

              • (string) --

            • differentialPrivacy (dict) --

              Specifies the unique identifier for your users.

              • columns (list) --

                The name of the column (such as user_id) that contains the unique identifier of your users whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

                • (dict) --

                  Specifies the name of the column that contains the unique identifier of your users, whose privacy you want to protect.

                  • name (string) --

                    The name of the column, such as user_id, that contains the unique identifier of your users, whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

            • allowedResultReceivers (list) --

              The allowed result receivers.

              • (string) --

            • allowedAdditionalAnalyses (list) --

              The additional analyses allowed by the consolidated policy.

              • (string) --

ListProtectedQueries (updated) Link ¶
Changes (response)
{'protectedQueries': {'intermediateTableConfiguration': {'arn': 'string',
                                                         'id': 'string',
                                                         'name': 'string'}}}

Lists protected queries, sorted by the most recent query.

See also: AWS API Documentation

Request Syntax

client.list_protected_queries(
    membershipIdentifier='string',
    status='SUBMITTED'|'STARTED'|'CANCELLED'|'CANCELLING'|'FAILED'|'SUCCESS'|'TIMED_OUT',
    nextToken='string',
    maxResults=123
)
type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

The identifier for the membership in the collaboration.

type status:

string

param status:

A filter on the status of the protected query.

type nextToken:

string

param nextToken:

The pagination token that's used to fetch the next set of results.

type maxResults:

integer

param maxResults:

The maximum number of results that are returned for an API request call. The service chooses a default number if you don't set one. The service might return a nextToken even if the maxResults value has not been met.

rtype:

dict

returns:

Response Syntax

{
    'nextToken': 'string',
    'protectedQueries': [
        {
            'id': 'string',
            'membershipId': 'string',
            'membershipArn': 'string',
            'createTime': datetime(2015, 1, 1),
            'status': 'SUBMITTED'|'STARTED'|'CANCELLED'|'CANCELLING'|'FAILED'|'SUCCESS'|'TIMED_OUT',
            'receiverConfigurations': [
                {
                    'analysisType': 'DIRECT_ANALYSIS'|'ADDITIONAL_ANALYSIS',
                    'configurationDetails': {
                        'directAnalysisConfigurationDetails': {
                            'receiverAccountIds': [
                                'string',
                            ]
                        }
                    }
                },
            ],
            'queryComputePayerAccountId': 'string',
            'intermediateTableConfiguration': {
                'id': 'string',
                'arn': 'string',
                'name': 'string'
            }
        },
    ]
}

Response Structure

  • (dict) --

    • nextToken (string) --

      The pagination token that's used to fetch the next set of results.

    • protectedQueries (list) --

      A list of protected queries.

      • (dict) --

        The protected query summary for the objects listed by the request.

        • id (string) --

          The unique ID of the protected query.

        • membershipId (string) --

          The unique ID for the membership that initiated the protected query.

        • membershipArn (string) --

          The unique ARN for the membership that initiated the protected query.

        • createTime (datetime) --

          The time the protected query was created.

        • status (string) --

          The status of the protected query.

        • receiverConfigurations (list) --

          The receiver configuration.

          • (dict) --

            The receiver configuration for a protected query.

            • analysisType (string) --

              The type of analysis for the protected query. The results of the query can be analyzed directly ( DIRECT_ANALYSIS) or used as input into additional analyses ( ADDITIONAL_ANALYSIS), such as a query that is a seed for a lookalike ML model.

            • configurationDetails (dict) --

              The configuration details of the receiver configuration.

              • directAnalysisConfigurationDetails (dict) --

                The direct analysis configuration details.

                • receiverAccountIds (list) --

                  The account IDs for the member who received the results of a protected query.

                  • (string) --

        • queryComputePayerAccountId (string) --

          The account ID of the member that pays for the query compute costs.

        • intermediateTableConfiguration (dict) --

          The intermediate table configuration, present when the protected query was triggered by a populate operation.

          • id (string) --

            The unique identifier of the intermediate table.

          • arn (string) --

            The Amazon Resource Name (ARN) of the intermediate table.

          • name (string) --

            The name of the intermediate table.

ListSchemas (updated) Link ¶
Changes (request, response)
Request
{'schemaType': {'INTERMEDIATE_TABLE'}}
Response
{'schemaSummaries': {'type': {'INTERMEDIATE_TABLE'}}}

Lists the schemas for relations within a collaboration.

See also: AWS API Documentation

Request Syntax

client.list_schemas(
    collaborationIdentifier='string',
    schemaType='TABLE'|'ID_MAPPING_TABLE'|'INTERMEDIATE_TABLE',
    nextToken='string',
    maxResults=123
)
type collaborationIdentifier:

string

param collaborationIdentifier:

[REQUIRED]

A unique identifier for the collaboration that the schema belongs to. Currently accepts a collaboration ID.

type schemaType:

string

param schemaType:

If present, filter schemas by schema type.

type nextToken:

string

param nextToken:

The pagination token that's used to fetch the next set of results.

type maxResults:

integer

param maxResults:

The maximum number of results that are returned for an API request call. The service chooses a default number if you don't set one. The service might return a nextToken even if the maxResults value has not been met.

rtype:

dict

returns:

Response Syntax

{
    'schemaSummaries': [
        {
            'name': 'string',
            'type': 'TABLE'|'ID_MAPPING_TABLE'|'INTERMEDIATE_TABLE',
            'creatorAccountId': 'string',
            'createTime': datetime(2015, 1, 1),
            'updateTime': datetime(2015, 1, 1),
            'collaborationId': 'string',
            'collaborationArn': 'string',
            'analysisRuleTypes': [
                'AGGREGATION'|'LIST'|'CUSTOM'|'ID_MAPPING_TABLE',
            ],
            'analysisMethod': 'DIRECT_QUERY'|'DIRECT_JOB'|'MULTIPLE',
            'resourceArn': 'string',
            'selectedAnalysisMethods': [
                'DIRECT_QUERY'|'DIRECT_JOB',
            ]
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • schemaSummaries (list) --

      The retrieved list of schemas.

      • (dict) --

        The schema summary for the objects listed by the request.

        • name (string) --

          The name for the schema object.

        • type (string) --

          The type of schema object.

        • creatorAccountId (string) --

          The unique account ID for the Amazon Web Services account that owns the schema.

        • createTime (datetime) --

          The time the schema object was created.

        • updateTime (datetime) --

          The time the schema object was last updated.

        • collaborationId (string) --

          The unique ID for the collaboration that the schema belongs to.

        • collaborationArn (string) --

          The unique ARN for the collaboration that the schema belongs to.

        • analysisRuleTypes (list) --

          The types of analysis rules that are associated with this schema object.

          • (string) --

        • analysisMethod (string) --

          The analysis method for the associated schema.

          DIRECT_QUERY allows SQL queries to be run directly on this table.

          DIRECT_JOB allows PySpark jobs to be run directly on this table.

          MULTIPLE allows both SQL queries and PySpark jobs to be run directly on this table.

        • resourceArn (string) --

          The Amazon Resource Name (ARN) of the schema summary resource.

        • selectedAnalysisMethods (list) --

          The selected analysis methods for the schema.

          • (string) --

    • nextToken (string) --

      The pagination token that's used to fetch the next set of results.

StartProtectedQuery (updated) Link ¶
Changes (request, response)
Request
{'resultConfiguration': {'outputConfiguration': {'intermediateTable': {'arn': 'string',
                                                                       'id': 'string',
                                                                       'name': 'string'}}}}
Response
{'protectedQuery': {'resultConfiguration': {'outputConfiguration': {'intermediateTable': {'arn': 'string',
                                                                                          'id': 'string',
                                                                                          'name': 'string'}}}}}

Creates a protected query that is started by Clean Rooms.

See also: AWS API Documentation

Request Syntax

client.start_protected_query(
    type='SQL',
    membershipIdentifier='string',
    sqlParameters={
        'queryString': 'string',
        'analysisTemplateArn': 'string',
        'parameters': {
            'string': 'string'
        }
    },
    resultConfiguration={
        'outputConfiguration': {
            's3': {
                'resultFormat': 'CSV'|'PARQUET',
                'bucket': 'string',
                'keyPrefix': 'string',
                'singleFileOutput': True|False
            },
            'member': {
                'accountId': 'string'
            },
            'distribute': {
                'locations': [
                    {
                        's3': {
                            'resultFormat': 'CSV'|'PARQUET',
                            'bucket': 'string',
                            'keyPrefix': 'string',
                            'singleFileOutput': True|False
                        },
                        'member': {
                            'accountId': 'string'
                        }
                    },
                ]
            },
            'intermediateTable': {
                'id': 'string',
                'arn': 'string',
                'name': 'string'
            }
        }
    },
    computeConfiguration={
        'worker': {
            'type': 'CR.1X'|'CR.4X',
            'number': 123,
            'properties': {
                'spark': {
                    'string': 'string'
                }
            }
        }
    },
    queryComputePayerAccountId='string'
)
type type:

string

param type:

[REQUIRED]

The type of the protected query to be started.

type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

A unique identifier for the membership to run this query against. Currently accepts a membership ID.

type sqlParameters:

dict

param sqlParameters:

[REQUIRED]

The protected SQL query parameters.

  • queryString (string) --

    The query string to be submitted.

  • analysisTemplateArn (string) --

    The Amazon Resource Name (ARN) associated with the analysis template within a collaboration.

  • parameters (dict) --

    The protected query SQL parameters.

    • (string) --

      • (string) --

type resultConfiguration:

dict

param resultConfiguration:

The details needed to write the query results.

  • outputConfiguration (dict) -- [REQUIRED]

    Configuration for protected query results.

    • s3 (dict) --

      Required configuration for a protected query with an s3 output type.

      • resultFormat (string) -- [REQUIRED]

        Intended file format of the result.

      • bucket (string) -- [REQUIRED]

        The S3 bucket to unload the protected query results.

      • keyPrefix (string) --

        The S3 prefix to unload the protected query results.

      • singleFileOutput (boolean) --

        Indicates whether files should be output as a single file ( TRUE) or output as multiple files ( FALSE). This parameter is only supported for analyses with the Spark analytics engine.

    • member (dict) --

      Required configuration for a protected query with a member output type.

      • accountId (string) -- [REQUIRED]

        The unique identifier for the account.

    • distribute (dict) --

      Required configuration for a protected query with a distribute output type.

      • locations (list) -- [REQUIRED]

        A list of locations where you want to distribute the protected query results. Each location must specify either an S3 destination or a collaboration member destination.

        • (dict) --

          Specifies where you'll distribute the results of your protected query. You must configure either an S3 destination or a collaboration member destination.

          • s3 (dict) --

            Contains the configuration to write the query results to S3.

            • resultFormat (string) -- [REQUIRED]

              Intended file format of the result.

            • bucket (string) -- [REQUIRED]

              The S3 bucket to unload the protected query results.

            • keyPrefix (string) --

              The S3 prefix to unload the protected query results.

            • singleFileOutput (boolean) --

              Indicates whether files should be output as a single file ( TRUE) or output as multiple files ( FALSE). This parameter is only supported for analyses with the Spark analytics engine.

          • member (dict) --

            Contains configuration details for the protected query member output.

            • accountId (string) -- [REQUIRED]

              The unique identifier for the account.

    • intermediateTable (dict) --

      The intermediate table output configuration, present when the protected query was triggered by a populate operation.

      • id (string) -- [REQUIRED]

        The unique identifier of the intermediate table.

      • arn (string) -- [REQUIRED]

        The Amazon Resource Name (ARN) of the intermediate table.

      • name (string) -- [REQUIRED]

        The name of the intermediate table.

type computeConfiguration:

dict

param computeConfiguration:

The compute configuration for the protected query.

  • worker (dict) --

    The worker configuration for the compute environment.

    • type (string) --

      The worker compute configuration type.

    • number (integer) --

      The number of workers.

      SQL queries support a minimum value of 2 and a maximum value of 400.

      PySpark jobs support a minimum value of 4 and a maximum value of 128.

    • properties (dict) --

      The configuration properties for the worker compute environment. These properties allow you to customize the compute settings for your Clean Rooms workloads.

      • spark (dict) --

        The Spark configuration properties for SQL and PySpark workloads. This map contains key-value pairs that configure Apache Spark settings to optimize performance for your data processing jobs. You can specify up to 50 Spark properties, with each key being 1-200 characters and each value being 0-500 characters. These properties allow you to adjust compute capacity for large datasets and complex workloads.

        • (string) --

          • (string) --

type queryComputePayerAccountId:

string

param queryComputePayerAccountId:

The account ID of the member that pays for the query compute costs.

rtype:

dict

returns:

Response Syntax

{
    'protectedQuery': {
        'id': 'string',
        'membershipId': 'string',
        'membershipArn': 'string',
        'createTime': datetime(2015, 1, 1),
        'sqlParameters': {
            'queryString': 'string',
            'analysisTemplateArn': 'string',
            'parameters': {
                'string': 'string'
            }
        },
        'status': 'SUBMITTED'|'STARTED'|'CANCELLED'|'CANCELLING'|'FAILED'|'SUCCESS'|'TIMED_OUT',
        'resultConfiguration': {
            'outputConfiguration': {
                's3': {
                    'resultFormat': 'CSV'|'PARQUET',
                    'bucket': 'string',
                    'keyPrefix': 'string',
                    'singleFileOutput': True|False
                },
                'member': {
                    'accountId': 'string'
                },
                'distribute': {
                    'locations': [
                        {
                            's3': {
                                'resultFormat': 'CSV'|'PARQUET',
                                'bucket': 'string',
                                'keyPrefix': 'string',
                                'singleFileOutput': True|False
                            },
                            'member': {
                                'accountId': 'string'
                            }
                        },
                    ]
                },
                'intermediateTable': {
                    'id': 'string',
                    'arn': 'string',
                    'name': 'string'
                }
            }
        },
        'statistics': {
            'totalDurationInMillis': 123,
            'billedResourceUtilization': {
                'units': 123.0
            }
        },
        'result': {
            'output': {
                's3': {
                    'location': 'string'
                },
                'memberList': [
                    {
                        'accountId': 'string'
                    },
                ],
                'distribute': {
                    's3': {
                        'location': 'string'
                    },
                    'memberList': [
                        {
                            'accountId': 'string'
                        },
                    ]
                }
            }
        },
        'error': {
            'message': 'string',
            'code': 'string'
        },
        'differentialPrivacy': {
            'sensitivityParameters': [
                {
                    'aggregationType': 'AVG'|'COUNT'|'COUNT_DISTINCT'|'SUM'|'STDDEV',
                    'aggregationExpression': 'string',
                    'userContributionLimit': 123,
                    'minColumnValue': ...,
                    'maxColumnValue': ...
                },
            ]
        },
        'computeConfiguration': {
            'worker': {
                'type': 'CR.1X'|'CR.4X',
                'number': 123,
                'properties': {
                    'spark': {
                        'string': 'string'
                    }
                }
            }
        },
        'queryComputePayerAccountId': 'string'
    }
}

Response Structure

  • (dict) --

    • protectedQuery (dict) --

      The protected query.

      • id (string) --

        The identifier for a protected query instance.

      • membershipId (string) --

        The identifier for the membership.

      • membershipArn (string) --

        The ARN of the membership.

      • createTime (datetime) --

        The time at which the protected query was created.

      • sqlParameters (dict) --

        The protected query SQL parameters.

        • queryString (string) --

          The query string to be submitted.

        • analysisTemplateArn (string) --

          The Amazon Resource Name (ARN) associated with the analysis template within a collaboration.

        • parameters (dict) --

          The protected query SQL parameters.

          • (string) --

            • (string) --

      • status (string) --

        The status of the query.

      • resultConfiguration (dict) --

        Contains any details needed to write the query results.

        • outputConfiguration (dict) --

          Configuration for protected query results.

          • s3 (dict) --

            Required configuration for a protected query with an s3 output type.

            • resultFormat (string) --

              Intended file format of the result.

            • bucket (string) --

              The S3 bucket to unload the protected query results.

            • keyPrefix (string) --

              The S3 prefix to unload the protected query results.

            • singleFileOutput (boolean) --

              Indicates whether files should be output as a single file ( TRUE) or output as multiple files ( FALSE). This parameter is only supported for analyses with the Spark analytics engine.

          • member (dict) --

            Required configuration for a protected query with a member output type.

            • accountId (string) --

              The unique identifier for the account.

          • distribute (dict) --

            Required configuration for a protected query with a distribute output type.

            • locations (list) --

              A list of locations where you want to distribute the protected query results. Each location must specify either an S3 destination or a collaboration member destination.

              • (dict) --

                Specifies where you'll distribute the results of your protected query. You must configure either an S3 destination or a collaboration member destination.

                • s3 (dict) --

                  Contains the configuration to write the query results to S3.

                  • resultFormat (string) --

                    Intended file format of the result.

                  • bucket (string) --

                    The S3 bucket to unload the protected query results.

                  • keyPrefix (string) --

                    The S3 prefix to unload the protected query results.

                  • singleFileOutput (boolean) --

                    Indicates whether files should be output as a single file ( TRUE) or output as multiple files ( FALSE). This parameter is only supported for analyses with the Spark analytics engine.

                • member (dict) --

                  Contains configuration details for the protected query member output.

                  • accountId (string) --

                    The unique identifier for the account.

          • intermediateTable (dict) --

            The intermediate table output configuration, present when the protected query was triggered by a populate operation.

            • id (string) --

              The unique identifier of the intermediate table.

            • arn (string) --

              The Amazon Resource Name (ARN) of the intermediate table.

            • name (string) --

              The name of the intermediate table.

      • statistics (dict) --

        Statistics about protected query execution.

        • totalDurationInMillis (integer) --

          The duration of the protected query, from creation until query completion, in milliseconds.

        • billedResourceUtilization (dict) --

          The billed resource utilization.

          • units (float) --

            The number of Clean Rooms Processing Unit (CRPU) hours that have been billed.

      • result (dict) --

        The result of the protected query.

        • output (dict) --

          The output of the protected query.

          • s3 (dict) --

            If present, the output for a protected query with an S3 output type.

            • location (string) --

              The S3 location of the result.

          • memberList (list) --

            The list of member Amazon Web Services account(s) that received the results of the query.

            • (dict) --

              Details about the member who received the query result.

              • accountId (string) --

                The Amazon Web Services account ID of the member in the collaboration who can receive results for the query.

          • distribute (dict) --

            Contains output information for protected queries that use a distribute output type. This output type lets you send query results to multiple locations - either to S3 or to collaboration members.

            • s3 (dict) --

              Contains output information for protected queries with an S3 output type.

              • location (string) --

                The S3 location of the result.

            • memberList (list) --

              Contains the output results for each member location specified in the distribute output configuration. Each entry provides details about the result distribution to a specific collaboration member.

              • (dict) --

                Details about the member who received the query result.

                • accountId (string) --

                  The Amazon Web Services account ID of the member in the collaboration who can receive results for the query.

      • error (dict) --

        An error thrown by the protected query.

        • message (string) --

          A description of why the query failed.

        • code (string) --

          An error code for the error.

      • differentialPrivacy (dict) --

        The sensitivity parameters of the differential privacy results of the protected query.

        • sensitivityParameters (list) --

          Provides the sensitivity parameters that you can use to better understand the total amount of noise in query results.

          • (dict) --

            Provides the sensitivity parameters.

            • aggregationType (string) --

              The type of aggregation function that was run.

            • aggregationExpression (string) --

              The aggregation expression that was run.

            • userContributionLimit (integer) --

              The maximum number of rows contributed by a user in a SQL query.

            • minColumnValue (float) --

              The lower bound of the aggregation expression.

            • maxColumnValue (float) --

              The upper bound of the aggregation expression.

      • computeConfiguration (dict) --

        The compute configuration for the protected query.

        • worker (dict) --

          The worker configuration for the compute environment.

          • type (string) --

            The worker compute configuration type.

          • number (integer) --

            The number of workers.

            SQL queries support a minimum value of 2 and a maximum value of 400.

            PySpark jobs support a minimum value of 4 and a maximum value of 128.

          • properties (dict) --

            The configuration properties for the worker compute environment. These properties allow you to customize the compute settings for your Clean Rooms workloads.

            • spark (dict) --

              The Spark configuration properties for SQL and PySpark workloads. This map contains key-value pairs that configure Apache Spark settings to optimize performance for your data processing jobs. You can specify up to 50 Spark properties, with each key being 1-200 characters and each value being 0-500 characters. These properties allow you to adjust compute capacity for large datasets and complex workloads.

              • (string) --

                • (string) --

      • queryComputePayerAccountId (string) --

        The account ID of the member that pays for the query compute costs.

UpdateConfiguredTableAnalysisRule (updated) Link ¶
Changes (request, response)
Request
{'analysisRulePolicy': {'v1': {'custom': {'allowedAdditionalAnalyses': ['string'],
                                          'allowedResultReceivers': ['string']}}}}
Response
{'analysisRule': {'policy': {'v1': {'custom': {'allowedAdditionalAnalyses': ['string'],
                                               'allowedResultReceivers': ['string']}}}}}

Updates a configured table analysis rule.

See also: AWS API Documentation

Request Syntax

client.update_configured_table_analysis_rule(
    configuredTableIdentifier='string',
    analysisRuleType='AGGREGATION'|'LIST'|'CUSTOM',
    analysisRulePolicy={
        'v1': {
            'list': {
                'joinColumns': [
                    'string',
                ],
                'allowedJoinOperators': [
                    'OR'|'AND',
                ],
                'listColumns': [
                    'string',
                ],
                'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED'
            },
            'aggregation': {
                'aggregateColumns': [
                    {
                        'columnNames': [
                            'string',
                        ],
                        'function': 'SUM'|'SUM_DISTINCT'|'COUNT'|'COUNT_DISTINCT'|'AVG'
                    },
                ],
                'joinColumns': [
                    'string',
                ],
                'joinRequired': 'QUERY_RUNNER',
                'allowedJoinOperators': [
                    'OR'|'AND',
                ],
                'dimensionColumns': [
                    'string',
                ],
                'scalarFunctions': [
                    'ABS'|'CAST'|'CEILING'|'COALESCE'|'CONVERT'|'CURRENT_DATE'|'DATEADD'|'EXTRACT'|'FLOOR'|'GETDATE'|'LN'|'LOG'|'LOWER'|'ROUND'|'RTRIM'|'SQRT'|'SUBSTRING'|'TO_CHAR'|'TO_DATE'|'TO_NUMBER'|'TO_TIMESTAMP'|'TRIM'|'TRUNC'|'UPPER',
                ],
                'outputConstraints': [
                    {
                        'columnName': 'string',
                        'minimum': 123,
                        'type': 'COUNT_DISTINCT'
                    },
                ],
                'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED'
            },
            'custom': {
                'allowedAnalyses': [
                    'string',
                ],
                'allowedAnalysisProviders': [
                    'string',
                ],
                'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                'disallowedOutputColumns': [
                    'string',
                ],
                'differentialPrivacy': {
                    'columns': [
                        {
                            'name': 'string'
                        },
                    ]
                },
                'allowedResultReceivers': [
                    'string',
                ],
                'allowedAdditionalAnalyses': [
                    'string',
                ]
            }
        }
    }
)
type configuredTableIdentifier:

string

param configuredTableIdentifier:

[REQUIRED]

The unique identifier for the configured table that the analysis rule applies to. Currently accepts the configured table ID.

type analysisRuleType:

string

param analysisRuleType:

[REQUIRED]

The analysis rule type to be updated. Configured table analysis rules are uniquely identified by their configured table identifier and analysis rule type.

type analysisRulePolicy:

dict

param analysisRulePolicy:

[REQUIRED]

The new analysis rule policy for the configured table analysis rule.

  • v1 (dict) --

    Controls on the query specifications that can be run on a configured table.

    • list (dict) --

      Analysis rule type that enables only list queries on a configured table.

      • joinColumns (list) -- [REQUIRED]

        Columns that can be used to join a configured table with the table of the member who can query and other members' configured tables.

        • (string) --

      • allowedJoinOperators (list) --

        The logical operators (if any) that are to be used in an INNER JOIN match condition. Default is AND.

        • (string) --

      • listColumns (list) -- [REQUIRED]

        Columns that can be listed in the output.

        • (string) --

      • additionalAnalyses (string) --

        An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.

    • aggregation (dict) --

      Analysis rule type that enables only aggregation queries on a configured table.

      • aggregateColumns (list) -- [REQUIRED]

        The columns that query runners are allowed to use in aggregation queries.

        • (dict) --

          Column in configured table that can be used in aggregate function in query.

          • columnNames (list) -- [REQUIRED]

            Column names in configured table of aggregate columns.

            • (string) --

          • function (string) -- [REQUIRED]

            Aggregation function that can be applied to aggregate column in query.

      • joinColumns (list) -- [REQUIRED]

        Columns in configured table that can be used in join statements and/or as aggregate columns. They can never be outputted directly.

        • (string) --

      • joinRequired (string) --

        Control that requires member who runs query to do a join with their configured table and/or other configured table in query.

      • allowedJoinOperators (list) --

        Which logical operators (if any) are to be used in an INNER JOIN match condition. Default is AND.

        • (string) --

      • dimensionColumns (list) -- [REQUIRED]

        The columns that query runners are allowed to select, group by, or filter by.

        • (string) --

      • scalarFunctions (list) -- [REQUIRED]

        Set of scalar functions that are allowed to be used on dimension columns and the output of aggregation of metrics.

        • (string) --

      • outputConstraints (list) -- [REQUIRED]

        Columns that must meet a specific threshold value (after an aggregation function is applied to it) for each output row to be returned.

        • (dict) --

          Constraint on query output removing output rows that do not meet a minimum number of distinct values of a specified column.

          • columnName (string) -- [REQUIRED]

            Column in aggregation constraint for which there must be a minimum number of distinct values in an output row for it to be in the query output.

          • minimum (integer) -- [REQUIRED]

            The minimum number of distinct values that an output row must be an aggregation of. Minimum threshold of distinct values for a specified column that must exist in an output row for it to be in the query output.

          • type (string) -- [REQUIRED]

            The type of aggregation the constraint allows. The only valid value is currently COUNT_DISTINCT.

      • additionalAnalyses (string) --

        An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.

        The additionalAnalyses parameter is currently supported for the list analysis rule ( AnalysisRuleList) and the custom analysis rule ( AnalysisRuleCustom).

    • custom (dict) --

      A type of analysis rule that enables the table owner to approve custom SQL queries on their configured tables. It supports differential privacy.

      • allowedAnalyses (list) -- [REQUIRED]

        The ARN of the analysis templates that are allowed by the custom analysis rule.

        • (string) --

      • allowedAnalysisProviders (list) --

        The IDs of the Amazon Web Services accounts that are allowed to query by the custom analysis rule. Required when allowedAnalyses is ANY_QUERY.

        • (string) --

      • additionalAnalyses (string) --

        An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.

      • disallowedOutputColumns (list) --

        A list of columns that aren't allowed to be shown in the query output.

        • (string) --

      • differentialPrivacy (dict) --

        The differential privacy configuration.

        • columns (list) -- [REQUIRED]

          The name of the column (such as user_id) that contains the unique identifier of your users whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

          • (dict) --

            Specifies the name of the column that contains the unique identifier of your users, whose privacy you want to protect.

            • name (string) -- [REQUIRED]

              The name of the column, such as user_id, that contains the unique identifier of your users, whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

      • allowedResultReceivers (list) --

        The list of Amazon Web Services account IDs that are allowed to receive results from queries run on the configured table.

        • (string) --

      • allowedAdditionalAnalyses (list) --

        The list of allowed additional analyses for the custom analysis rule.

        • (string) --

rtype:

dict

returns:

Response Syntax

{
    'analysisRule': {
        'configuredTableId': 'string',
        'configuredTableArn': 'string',
        'policy': {
            'v1': {
                'list': {
                    'joinColumns': [
                        'string',
                    ],
                    'allowedJoinOperators': [
                        'OR'|'AND',
                    ],
                    'listColumns': [
                        'string',
                    ],
                    'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED'
                },
                'aggregation': {
                    'aggregateColumns': [
                        {
                            'columnNames': [
                                'string',
                            ],
                            'function': 'SUM'|'SUM_DISTINCT'|'COUNT'|'COUNT_DISTINCT'|'AVG'
                        },
                    ],
                    'joinColumns': [
                        'string',
                    ],
                    'joinRequired': 'QUERY_RUNNER',
                    'allowedJoinOperators': [
                        'OR'|'AND',
                    ],
                    'dimensionColumns': [
                        'string',
                    ],
                    'scalarFunctions': [
                        'ABS'|'CAST'|'CEILING'|'COALESCE'|'CONVERT'|'CURRENT_DATE'|'DATEADD'|'EXTRACT'|'FLOOR'|'GETDATE'|'LN'|'LOG'|'LOWER'|'ROUND'|'RTRIM'|'SQRT'|'SUBSTRING'|'TO_CHAR'|'TO_DATE'|'TO_NUMBER'|'TO_TIMESTAMP'|'TRIM'|'TRUNC'|'UPPER',
                    ],
                    'outputConstraints': [
                        {
                            'columnName': 'string',
                            'minimum': 123,
                            'type': 'COUNT_DISTINCT'
                        },
                    ],
                    'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED'
                },
                'custom': {
                    'allowedAnalyses': [
                        'string',
                    ],
                    'allowedAnalysisProviders': [
                        'string',
                    ],
                    'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED',
                    'disallowedOutputColumns': [
                        'string',
                    ],
                    'differentialPrivacy': {
                        'columns': [
                            {
                                'name': 'string'
                            },
                        ]
                    },
                    'allowedResultReceivers': [
                        'string',
                    ],
                    'allowedAdditionalAnalyses': [
                        'string',
                    ]
                }
            }
        },
        'type': 'AGGREGATION'|'LIST'|'CUSTOM',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1)
    }
}

Response Structure

  • (dict) --

    • analysisRule (dict) --

      The entire updated analysis rule.

      • configuredTableId (string) --

        The unique ID for the configured table.

      • configuredTableArn (string) --

        The unique ARN for the configured table.

      • policy (dict) --

        The policy that controls SQL query rules.

        • v1 (dict) --

          Controls on the query specifications that can be run on a configured table.

          • list (dict) --

            Analysis rule type that enables only list queries on a configured table.

            • joinColumns (list) --

              Columns that can be used to join a configured table with the table of the member who can query and other members' configured tables.

              • (string) --

            • allowedJoinOperators (list) --

              The logical operators (if any) that are to be used in an INNER JOIN match condition. Default is AND.

              • (string) --

            • listColumns (list) --

              Columns that can be listed in the output.

              • (string) --

            • additionalAnalyses (string) --

              An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.

          • aggregation (dict) --

            Analysis rule type that enables only aggregation queries on a configured table.

            • aggregateColumns (list) --

              The columns that query runners are allowed to use in aggregation queries.

              • (dict) --

                Column in configured table that can be used in aggregate function in query.

                • columnNames (list) --

                  Column names in configured table of aggregate columns.

                  • (string) --

                • function (string) --

                  Aggregation function that can be applied to aggregate column in query.

            • joinColumns (list) --

              Columns in configured table that can be used in join statements and/or as aggregate columns. They can never be outputted directly.

              • (string) --

            • joinRequired (string) --

              Control that requires member who runs query to do a join with their configured table and/or other configured table in query.

            • allowedJoinOperators (list) --

              Which logical operators (if any) are to be used in an INNER JOIN match condition. Default is AND.

              • (string) --

            • dimensionColumns (list) --

              The columns that query runners are allowed to select, group by, or filter by.

              • (string) --

            • scalarFunctions (list) --

              Set of scalar functions that are allowed to be used on dimension columns and the output of aggregation of metrics.

              • (string) --

            • outputConstraints (list) --

              Columns that must meet a specific threshold value (after an aggregation function is applied to it) for each output row to be returned.

              • (dict) --

                Constraint on query output removing output rows that do not meet a minimum number of distinct values of a specified column.

                • columnName (string) --

                  Column in aggregation constraint for which there must be a minimum number of distinct values in an output row for it to be in the query output.

                • minimum (integer) --

                  The minimum number of distinct values that an output row must be an aggregation of. Minimum threshold of distinct values for a specified column that must exist in an output row for it to be in the query output.

                • type (string) --

                  The type of aggregation the constraint allows. The only valid value is currently COUNT_DISTINCT.

            • additionalAnalyses (string) --

              An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.

              The additionalAnalyses parameter is currently supported for the list analysis rule ( AnalysisRuleList) and the custom analysis rule ( AnalysisRuleCustom).

          • custom (dict) --

            A type of analysis rule that enables the table owner to approve custom SQL queries on their configured tables. It supports differential privacy.

            • allowedAnalyses (list) --

              The ARN of the analysis templates that are allowed by the custom analysis rule.

              • (string) --

            • allowedAnalysisProviders (list) --

              The IDs of the Amazon Web Services accounts that are allowed to query by the custom analysis rule. Required when allowedAnalyses is ANY_QUERY.

              • (string) --

            • additionalAnalyses (string) --

              An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.

            • disallowedOutputColumns (list) --

              A list of columns that aren't allowed to be shown in the query output.

              • (string) --

            • differentialPrivacy (dict) --

              The differential privacy configuration.

              • columns (list) --

                The name of the column (such as user_id) that contains the unique identifier of your users whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

                • (dict) --

                  Specifies the name of the column that contains the unique identifier of your users, whose privacy you want to protect.

                  • name (string) --

                    The name of the column, such as user_id, that contains the unique identifier of your users, whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

            • allowedResultReceivers (list) --

              The list of Amazon Web Services account IDs that are allowed to receive results from queries run on the configured table.

              • (string) --

            • allowedAdditionalAnalyses (list) --

              The list of allowed additional analyses for the custom analysis rule.

              • (string) --

      • type (string) --

        The type of configured table analysis rule.

      • createTime (datetime) --

        The time the configured table analysis rule was created.

      • updateTime (datetime) --

        The time the configured table analysis rule was last updated.

UpdateConfiguredTableAssociation (updated) Link ¶
Changes (response)
{'configuredTableAssociation': {'childResources': [{'ownerAccountId': 'string',
                                                    'resourceId': 'string',
                                                    'resourceName': 'string',
                                                    'resourceStatus': 'CREATED '
                                                                      '| '
                                                                      'POPULATE_STARTED '
                                                                      '| '
                                                                      'POPULATE_SUCCESS '
                                                                      '| '
                                                                      'POPULATE_FAILED '
                                                                      '| '
                                                                      'DISALLOWED_BY_DATA_PROVIDER '
                                                                      '| '
                                                                      'BASE_TABLE_REMOVED '
                                                                      '| '
                                                                      'RETENTION_PERIOD_EXPIRED',
                                                    'resourceType': 'INTERMEDIATE_TABLE'}]}}

Updates a configured table association.

See also: AWS API Documentation

Request Syntax

client.update_configured_table_association(
    configuredTableAssociationIdentifier='string',
    membershipIdentifier='string',
    description='string',
    roleArn='string'
)
type configuredTableAssociationIdentifier:

string

param configuredTableAssociationIdentifier:

[REQUIRED]

The unique identifier for the configured table association to update. Currently accepts the configured table association ID.

type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

The unique ID for the membership that the configured table association belongs to.

type description:

string

param description:

A new description for the configured table association.

type roleArn:

string

param roleArn:

The service will assume this role to access catalog metadata and query the table.

rtype:

dict

returns:

Response Syntax

{
    'configuredTableAssociation': {
        'arn': 'string',
        'id': 'string',
        'configuredTableId': 'string',
        'configuredTableArn': 'string',
        'membershipId': 'string',
        'membershipArn': 'string',
        'roleArn': 'string',
        'name': 'string',
        'description': 'string',
        'analysisRuleTypes': [
            'AGGREGATION'|'LIST'|'CUSTOM',
        ],
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'childResources': [
            {
                'resourceId': 'string',
                'resourceType': 'INTERMEDIATE_TABLE',
                'resourceName': 'string',
                'ownerAccountId': 'string',
                'resourceStatus': 'CREATED'|'POPULATE_STARTED'|'POPULATE_SUCCESS'|'POPULATE_FAILED'|'DISALLOWED_BY_DATA_PROVIDER'|'BASE_TABLE_REMOVED'|'RETENTION_PERIOD_EXPIRED'
            },
        ]
    }
}

Response Structure

  • (dict) --

    • configuredTableAssociation (dict) --

      The entire updated configured table association.

      • arn (string) --

        The unique ARN for the configured table association.

      • id (string) --

        The unique ID for the configured table association.

      • configuredTableId (string) --

        The unique ID for the configured table that the association refers to.

      • configuredTableArn (string) --

        The unique ARN for the configured table that the association refers to.

      • membershipId (string) --

        The unique ID for the membership this configured table association belongs to.

      • membershipArn (string) --

        The unique ARN for the membership this configured table association belongs to.

      • roleArn (string) --

        The service will assume this role to access catalog metadata and query the table.

      • name (string) --

        The name of the configured table association, in lowercase. The table is identified by this name when running protected queries against the underlying data.

      • description (string) --

        A description of the configured table association.

      • analysisRuleTypes (list) --

        The analysis rule types for the configured table association.

        • (string) --

      • createTime (datetime) --

        The time the configured table association was created.

      • updateTime (datetime) --

        The time the configured table association was last updated.

      • childResources (list) --

        The child resources that depend on this configured table association.

        • (dict) --

          Contains information about a child resource of a given resource in a collaboration.

          • resourceId (string) --

            The unique identifier of the child resource.

          • resourceType (string) --

            The type of the child resource.

          • resourceName (string) --

            The name of the child resource.

          • ownerAccountId (string) --

            The Amazon Web Services account ID of the member who owns the child resource.

          • resourceStatus (string) --

            The current status of the child resource.

UpdateIdMappingTable (updated) Link ¶
Changes (response)
{'idMappingTable': {'childResources': [{'ownerAccountId': 'string',
                                        'resourceId': 'string',
                                        'resourceName': 'string',
                                        'resourceStatus': 'CREATED | '
                                                          'POPULATE_STARTED | '
                                                          'POPULATE_SUCCESS | '
                                                          'POPULATE_FAILED | '
                                                          'DISALLOWED_BY_DATA_PROVIDER '
                                                          '| '
                                                          'BASE_TABLE_REMOVED '
                                                          '| '
                                                          'RETENTION_PERIOD_EXPIRED',
                                        'resourceType': 'INTERMEDIATE_TABLE'}]}}

Provides the details that are necessary to update an ID mapping table.

See also: AWS API Documentation

Request Syntax

client.update_id_mapping_table(
    idMappingTableIdentifier='string',
    membershipIdentifier='string',
    description='string',
    kmsKeyArn='string'
)
type idMappingTableIdentifier:

string

param idMappingTableIdentifier:

[REQUIRED]

The unique identifier of the ID mapping table that you want to update.

type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

The unique identifier of the membership that contains the ID mapping table that you want to update.

type description:

string

param description:

A new description for the ID mapping table.

type kmsKeyArn:

string

param kmsKeyArn:

The Amazon Resource Name (ARN) of the Amazon Web Services KMS key.

rtype:

dict

returns:

Response Syntax

{
    'idMappingTable': {
        'id': 'string',
        'arn': 'string',
        'inputReferenceConfig': {
            'inputReferenceArn': 'string',
            'manageResourcePolicies': True|False
        },
        'membershipId': 'string',
        'membershipArn': 'string',
        'collaborationId': 'string',
        'collaborationArn': 'string',
        'description': 'string',
        'name': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'inputReferenceProperties': {
            'idMappingTableInputSource': [
                {
                    'idNamespaceAssociationId': 'string',
                    'type': 'SOURCE'|'TARGET'
                },
            ]
        },
        'kmsKeyArn': 'string',
        'childResources': [
            {
                'resourceId': 'string',
                'resourceType': 'INTERMEDIATE_TABLE',
                'resourceName': 'string',
                'ownerAccountId': 'string',
                'resourceStatus': 'CREATED'|'POPULATE_STARTED'|'POPULATE_SUCCESS'|'POPULATE_FAILED'|'DISALLOWED_BY_DATA_PROVIDER'|'BASE_TABLE_REMOVED'|'RETENTION_PERIOD_EXPIRED'
            },
        ]
    }
}

Response Structure

  • (dict) --

    • idMappingTable (dict) --

      The updated ID mapping table.

      • id (string) --

        The unique identifier of the ID mapping table.

      • arn (string) --

        The Amazon Resource Name (ARN) of the ID mapping table.

      • inputReferenceConfig (dict) --

        The input reference configuration for the ID mapping table.

        • inputReferenceArn (string) --

          The Amazon Resource Name (ARN) of the referenced resource in Entity Resolution. Valid values are ID mapping workflow ARNs.

        • manageResourcePolicies (boolean) --

          When TRUE, Clean Rooms manages permissions for the ID mapping table resource.

          When FALSE, the resource owner manages permissions for the ID mapping table resource.

      • membershipId (string) --

        The unique identifier of the membership resource for the ID mapping table.

      • membershipArn (string) --

        The Amazon Resource Name (ARN) of the membership resource for the ID mapping table.

      • collaborationId (string) --

        The unique identifier of the collaboration that contains this ID mapping table.

      • collaborationArn (string) --

        The Amazon Resource Name (ARN) of the collaboration that contains this ID mapping table.

      • description (string) --

        The description of the ID mapping table.

      • name (string) --

        The name of the ID mapping table.

      • createTime (datetime) --

        The time at which the ID mapping table was created.

      • updateTime (datetime) --

        The most recent time at which the ID mapping table was updated.

      • inputReferenceProperties (dict) --

        The input reference properties for the ID mapping table.

        • idMappingTableInputSource (list) --

          The input source of the ID mapping table.

          • (dict) --

            The input source of the ID mapping table.

            • idNamespaceAssociationId (string) --

              The unique identifier of the ID namespace association.

            • type (string) --

              The type of the input source of the ID mapping table.

      • kmsKeyArn (string) --

        The Amazon Resource Name (ARN) of the Amazon Web Services KMS key.

      • childResources (list) --

        The child resources that depend on this ID mapping table.

        • (dict) --

          Contains information about a child resource of a given resource in a collaboration.

          • resourceId (string) --

            The unique identifier of the child resource.

          • resourceType (string) --

            The type of the child resource.

          • resourceName (string) --

            The name of the child resource.

          • ownerAccountId (string) --

            The Amazon Web Services account ID of the member who owns the child resource.

          • resourceStatus (string) --

            The current status of the child resource.

UpdateProtectedQuery (updated) Link ¶
Changes (response)
{'protectedQuery': {'resultConfiguration': {'outputConfiguration': {'intermediateTable': {'arn': 'string',
                                                                                          'id': 'string',
                                                                                          'name': 'string'}}}}}

Updates the processing of a currently running query.

See also: AWS API Documentation

Request Syntax

client.update_protected_query(
    membershipIdentifier='string',
    protectedQueryIdentifier='string',
    targetStatus='CANCELLED'
)
type membershipIdentifier:

string

param membershipIdentifier:

[REQUIRED]

The identifier for a member of a protected query instance.

type protectedQueryIdentifier:

string

param protectedQueryIdentifier:

[REQUIRED]

The identifier for a protected query instance.

type targetStatus:

string

param targetStatus:

[REQUIRED]

The target status of a query. Used to update the execution status of a currently running query.

rtype:

dict

returns:

Response Syntax

{
    'protectedQuery': {
        'id': 'string',
        'membershipId': 'string',
        'membershipArn': 'string',
        'createTime': datetime(2015, 1, 1),
        'sqlParameters': {
            'queryString': 'string',
            'analysisTemplateArn': 'string',
            'parameters': {
                'string': 'string'
            }
        },
        'status': 'SUBMITTED'|'STARTED'|'CANCELLED'|'CANCELLING'|'FAILED'|'SUCCESS'|'TIMED_OUT',
        'resultConfiguration': {
            'outputConfiguration': {
                's3': {
                    'resultFormat': 'CSV'|'PARQUET',
                    'bucket': 'string',
                    'keyPrefix': 'string',
                    'singleFileOutput': True|False
                },
                'member': {
                    'accountId': 'string'
                },
                'distribute': {
                    'locations': [
                        {
                            's3': {
                                'resultFormat': 'CSV'|'PARQUET',
                                'bucket': 'string',
                                'keyPrefix': 'string',
                                'singleFileOutput': True|False
                            },
                            'member': {
                                'accountId': 'string'
                            }
                        },
                    ]
                },
                'intermediateTable': {
                    'id': 'string',
                    'arn': 'string',
                    'name': 'string'
                }
            }
        },
        'statistics': {
            'totalDurationInMillis': 123,
            'billedResourceUtilization': {
                'units': 123.0
            }
        },
        'result': {
            'output': {
                's3': {
                    'location': 'string'
                },
                'memberList': [
                    {
                        'accountId': 'string'
                    },
                ],
                'distribute': {
                    's3': {
                        'location': 'string'
                    },
                    'memberList': [
                        {
                            'accountId': 'string'
                        },
                    ]
                }
            }
        },
        'error': {
            'message': 'string',
            'code': 'string'
        },
        'differentialPrivacy': {
            'sensitivityParameters': [
                {
                    'aggregationType': 'AVG'|'COUNT'|'COUNT_DISTINCT'|'SUM'|'STDDEV',
                    'aggregationExpression': 'string',
                    'userContributionLimit': 123,
                    'minColumnValue': ...,
                    'maxColumnValue': ...
                },
            ]
        },
        'computeConfiguration': {
            'worker': {
                'type': 'CR.1X'|'CR.4X',
                'number': 123,
                'properties': {
                    'spark': {
                        'string': 'string'
                    }
                }
            }
        },
        'queryComputePayerAccountId': 'string'
    }
}

Response Structure

  • (dict) --

    • protectedQuery (dict) --

      The protected query output.

      • id (string) --

        The identifier for a protected query instance.

      • membershipId (string) --

        The identifier for the membership.

      • membershipArn (string) --

        The ARN of the membership.

      • createTime (datetime) --

        The time at which the protected query was created.

      • sqlParameters (dict) --

        The protected query SQL parameters.

        • queryString (string) --

          The query string to be submitted.

        • analysisTemplateArn (string) --

          The Amazon Resource Name (ARN) associated with the analysis template within a collaboration.

        • parameters (dict) --

          The protected query SQL parameters.

          • (string) --

            • (string) --

      • status (string) --

        The status of the query.

      • resultConfiguration (dict) --

        Contains any details needed to write the query results.

        • outputConfiguration (dict) --

          Configuration for protected query results.

          • s3 (dict) --

            Required configuration for a protected query with an s3 output type.

            • resultFormat (string) --

              Intended file format of the result.

            • bucket (string) --

              The S3 bucket to unload the protected query results.

            • keyPrefix (string) --

              The S3 prefix to unload the protected query results.

            • singleFileOutput (boolean) --

              Indicates whether files should be output as a single file ( TRUE) or output as multiple files ( FALSE). This parameter is only supported for analyses with the Spark analytics engine.

          • member (dict) --

            Required configuration for a protected query with a member output type.

            • accountId (string) --

              The unique identifier for the account.

          • distribute (dict) --

            Required configuration for a protected query with a distribute output type.

            • locations (list) --

              A list of locations where you want to distribute the protected query results. Each location must specify either an S3 destination or a collaboration member destination.

              • (dict) --

                Specifies where you'll distribute the results of your protected query. You must configure either an S3 destination or a collaboration member destination.

                • s3 (dict) --

                  Contains the configuration to write the query results to S3.

                  • resultFormat (string) --

                    Intended file format of the result.

                  • bucket (string) --

                    The S3 bucket to unload the protected query results.

                  • keyPrefix (string) --

                    The S3 prefix to unload the protected query results.

                  • singleFileOutput (boolean) --

                    Indicates whether files should be output as a single file ( TRUE) or output as multiple files ( FALSE). This parameter is only supported for analyses with the Spark analytics engine.

                • member (dict) --

                  Contains configuration details for the protected query member output.

                  • accountId (string) --

                    The unique identifier for the account.

          • intermediateTable (dict) --

            The intermediate table output configuration, present when the protected query was triggered by a populate operation.

            • id (string) --

              The unique identifier of the intermediate table.

            • arn (string) --

              The Amazon Resource Name (ARN) of the intermediate table.

            • name (string) --

              The name of the intermediate table.

      • statistics (dict) --

        Statistics about protected query execution.

        • totalDurationInMillis (integer) --

          The duration of the protected query, from creation until query completion, in milliseconds.

        • billedResourceUtilization (dict) --

          The billed resource utilization.

          • units (float) --

            The number of Clean Rooms Processing Unit (CRPU) hours that have been billed.

      • result (dict) --

        The result of the protected query.

        • output (dict) --

          The output of the protected query.

          • s3 (dict) --

            If present, the output for a protected query with an S3 output type.

            • location (string) --

              The S3 location of the result.

          • memberList (list) --

            The list of member Amazon Web Services account(s) that received the results of the query.

            • (dict) --

              Details about the member who received the query result.

              • accountId (string) --

                The Amazon Web Services account ID of the member in the collaboration who can receive results for the query.

          • distribute (dict) --

            Contains output information for protected queries that use a distribute output type. This output type lets you send query results to multiple locations - either to S3 or to collaboration members.

            • s3 (dict) --

              Contains output information for protected queries with an S3 output type.

              • location (string) --

                The S3 location of the result.

            • memberList (list) --

              Contains the output results for each member location specified in the distribute output configuration. Each entry provides details about the result distribution to a specific collaboration member.

              • (dict) --

                Details about the member who received the query result.

                • accountId (string) --

                  The Amazon Web Services account ID of the member in the collaboration who can receive results for the query.

      • error (dict) --

        An error thrown by the protected query.

        • message (string) --

          A description of why the query failed.

        • code (string) --

          An error code for the error.

      • differentialPrivacy (dict) --

        The sensitivity parameters of the differential privacy results of the protected query.

        • sensitivityParameters (list) --

          Provides the sensitivity parameters that you can use to better understand the total amount of noise in query results.

          • (dict) --

            Provides the sensitivity parameters.

            • aggregationType (string) --

              The type of aggregation function that was run.

            • aggregationExpression (string) --

              The aggregation expression that was run.

            • userContributionLimit (integer) --

              The maximum number of rows contributed by a user in a SQL query.

            • minColumnValue (float) --

              The lower bound of the aggregation expression.

            • maxColumnValue (float) --

              The upper bound of the aggregation expression.

      • computeConfiguration (dict) --

        The compute configuration for the protected query.

        • worker (dict) --

          The worker configuration for the compute environment.

          • type (string) --

            The worker compute configuration type.

          • number (integer) --

            The number of workers.

            SQL queries support a minimum value of 2 and a maximum value of 400.

            PySpark jobs support a minimum value of 4 and a maximum value of 128.

          • properties (dict) --

            The configuration properties for the worker compute environment. These properties allow you to customize the compute settings for your Clean Rooms workloads.

            • spark (dict) --

              The Spark configuration properties for SQL and PySpark workloads. This map contains key-value pairs that configure Apache Spark settings to optimize performance for your data processing jobs. You can specify up to 50 Spark properties, with each key being 1-200 characters and each value being 0-500 characters. These properties allow you to adjust compute capacity for large datasets and complex workloads.

              • (string) --

                • (string) --

      • queryComputePayerAccountId (string) --

        The account ID of the member that pays for the query compute costs.