CleanRoomsService

Table of Contents

Client

class CleanRoomsService.Client

A low-level client representing AWS Clean Rooms Service

Note

AWS Clean Rooms is in preview release and is subject to change.

Welcome to the AWS Clean Rooms API Reference .

AWS Clean Rooms is an AWS service that helps multiple parties to join their data together in a secure collaboration workspace. In the collaboration, members who can query and receive results can get insights into the combined data without either party getting access to the other party's raw data.

To learn more about AWS Clean Rooms concepts, procedures, and best practices, see the AWS Clean Rooms User Guide.

import boto3

client = boto3.client('cleanrooms')

These are the available methods:

batch_get_schema(**kwargs)

Retrieves multiple schemas by their identifiers.

See also: AWS API Documentation

Request Syntax

response = client.batch_get_schema(
    collaborationIdentifier='string',
    names=[
        'string',
    ]
)
Parameters
  • collaborationIdentifier (string) --

    [REQUIRED]

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

  • names (list) --

    [REQUIRED]

    The names for the schema objects to retrieve.>

    • (string) --
Return type

dict

Returns

Response Syntax

{
    'schemas': [
        {
            'columns': [
                {
                    'name': 'string',
                    'type': 'string'
                },
            ],
            'partitionKeys': [
                {
                    'name': 'string',
                    'type': 'string'
                },
            ],
            'analysisRuleTypes': [
                'AGGREGATION'|'LIST',
            ],
            'analysisMethod': 'DIRECT_QUERY',
            'creatorAccountId': 'string',
            'name': 'string',
            'collaborationId': 'string',
            'collaborationArn': 'string',
            'description': 'string',
            'createTime': datetime(2015, 1, 1),
            'updateTime': datetime(2015, 1, 1),
            'type': 'TABLE'
        },
    ],
    '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 this schema represents.

          • (dict) --

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

            • name (string) --

              The name of the column.

            • type (string) --

              The type of the column.

        • partitionKeys (list) --

          The partition keys for the data set underlying this schema.

          • (dict) --

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

            • name (string) --

              The name of the column.

            • type (string) --

              The type of the column.

        • analysisRuleTypes (list) --

          The analysis rule types associated with the schema. Valued values are LIST and AGGREGATION. Currently, only one entry is present.

          • (string) --
        • analysisMethod (string) --

          The analysis method for the schema. The only valid value is currently DIRECT_QUERY.

        • creatorAccountId (string) --

          The unique account ID for the AWS 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 ARN for the collaboration that the schema belongs to.

        • description (string) --

          A description for the schema.

        • createTime (datetime) --

          The time the schema was created.

        • updateTime (datetime) --

          The time the schema was last updated.

        • type (string) --

          The type of schema. The only valid value is currently TABLE.

    • 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.

Exceptions

  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
can_paginate(operation_name)

Check if an operation can be paginated.

Parameters
operation_name (string) -- The operation name. This is the same name as the method name on the client. For example, if the method name is create_foo, and you'd normally invoke the operation as client.create_foo(**kwargs), if the create_foo operation can be paginated, you can use the call client.get_paginator("create_foo").
Returns
True if the operation can be paginated, False otherwise.
close()

Closes underlying endpoint connections.

create_collaboration(**kwargs)

Creates a new collaboration.

See also: AWS API Documentation

Request Syntax

response = client.create_collaboration(
    members=[
        {
            'accountId': 'string',
            'memberAbilities': [
                'CAN_QUERY'|'CAN_RECEIVE_RESULTS',
            ],
            'displayName': 'string'
        },
    ],
    name='string',
    description='string',
    creatorMemberAbilities=[
        'CAN_QUERY'|'CAN_RECEIVE_RESULTS',
    ],
    creatorDisplayName='string',
    dataEncryptionMetadata={
        'allowCleartext': True|False,
        'allowDuplicates': True|False,
        'allowJoinsOnColumnsWithDifferentNames': True|False,
        'preserveNulls': True|False
    },
    queryLogStatus='ENABLED'|'DISABLED'
)
Parameters
  • members (list) --

    [REQUIRED]

    A list of initial members, not including the creator. This list is immutable.

    • (dict) --

      Basic metadata used to construct a new member.

      • accountId (string) -- [REQUIRED]

        The identifier used to reference members of the collaboration. Currently only supports AWS Account ID.

      • memberAbilities (list) -- [REQUIRED]

        The abilities granted to the collaboration member.

        • (string) --
      • displayName (string) -- [REQUIRED]

        The member's display name.

  • name (string) --

    [REQUIRED]

    The display name for a collaboration.

  • description (string) --

    [REQUIRED]

    A description of the collaboration provided by the collaboration owner.

  • creatorMemberAbilities (list) --

    [REQUIRED]

    The abilities granted to the collaboration creator.

    • (string) --
  • creatorDisplayName (string) --

    [REQUIRED]

    The display name of the collaboration creator.

  • dataEncryptionMetadata (dict) --

    The settings for client-side encryption with Cryptographic Computing for Clean Rooms.

    • allowCleartext (boolean) -- [REQUIRED]

      Indicates whether encrypted tables can contain cleartext data (true) or are to cryptographically process every column (false).

    • allowDuplicates (boolean) -- [REQUIRED]

      Indicates whether Fingerprint columns can contain duplicate entries (true) or are to contain only non-repeated values (false).

    • allowJoinsOnColumnsWithDifferentNames (boolean) -- [REQUIRED]

      Indicates whether Fingerprint columns can be joined on any other Fingerprint column with a different name (true) or can only be joined on Fingerprint columns of the same name (false).

    • preserveNulls (boolean) -- [REQUIRED]

      Indicates whether NULL values are to be copied as NULL to encrypted tables (true) or cryptographically processed (false).

  • queryLogStatus (string) --

    [REQUIRED]

    An indicator as to whether query logging has been enabled or disabled for the collaboration.

Return type

dict

Returns

Response Syntax

{
    'collaboration': {
        'id': 'string',
        'arn': 'string',
        'name': 'string',
        'description': 'string',
        'creatorAccountId': 'string',
        'creatorDisplayName': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'memberStatus': 'INVITED'|'ACTIVE'|'LEFT'|'REMOVED',
        'membershipId': 'string',
        'membershipArn': 'string',
        'dataEncryptionMetadata': {
            'allowCleartext': True|False,
            'allowDuplicates': True|False,
            'allowJoinsOnColumnsWithDifferentNames': True|False,
            'preserveNulls': True|False
        },
        'queryLogStatus': 'ENABLED'|'DISABLED'
    }
}

Response Structure

  • (dict) --

    • collaboration (dict) --

      The entire created collaboration object.

      • id (string) --

        The unique ID for the collaboration.

      • arn (string) --

        The unique ARN for the collaboration.

      • name (string) --

        A human-readable identifier provided by the collaboration owner. Display names are not unique.

      • description (string) --

        A description of the collaboration provided by the collaboration owner.

      • creatorAccountId (string) --

        The identifier used to reference members of the collaboration. Currently only supports AWS account ID.

      • creatorDisplayName (string) --

        A display name of the collaboration creator.

      • createTime (datetime) --

        The time when the collaboration was created.

      • updateTime (datetime) --

        The time the collaboration metadata was last updated.

      • memberStatus (string) --

        The status of a member in a collaboration.

      • membershipId (string) --

        The unique ID for your membership within the collaboration.

      • membershipArn (string) --

        The unique ARN for your membership within the collaboration.

      • dataEncryptionMetadata (dict) --

        The settings for client-side encryption for cryptographic computing.

        • allowCleartext (boolean) --

          Indicates whether encrypted tables can contain cleartext data (true) or are to cryptographically process every column (false).

        • allowDuplicates (boolean) --

          Indicates whether Fingerprint columns can contain duplicate entries (true) or are to contain only non-repeated values (false).

        • allowJoinsOnColumnsWithDifferentNames (boolean) --

          Indicates whether Fingerprint columns can be joined on any other Fingerprint column with a different name (true) or can only be joined on Fingerprint columns of the same name (false).

        • preserveNulls (boolean) --

          Indicates whether NULL values are to be copied as NULL to encrypted tables (true) or cryptographically processed (false).

      • queryLogStatus (string) --

        An indicator as to whether query logging has been enabled or disabled for the collaboration.

Exceptions

  • CleanRoomsService.Client.exceptions.ServiceQuotaExceededException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
create_configured_table(**kwargs)

Creates a new configured table resource.

See also: AWS API Documentation

Request Syntax

response = client.create_configured_table(
    name='string',
    description='string',
    tableReference={
        'glue': {
            'tableName': 'string',
            'databaseName': 'string'
        }
    },
    allowedColumns=[
        'string',
    ],
    analysisMethod='DIRECT_QUERY'
)
Parameters
  • name (string) --

    [REQUIRED]

    The name of the configured table.

  • description (string) -- A description for the configured table.
  • tableReference (dict) --

    [REQUIRED]

    A reference to the AWS Glue table being configured.

    Note

    This is a Tagged Union structure. Only one of the following top level keys can be set: glue.

    • glue (dict) --

      If present, a reference to the AWS Glue table referred to by this table reference.

      • tableName (string) -- [REQUIRED]

        The name of the AWS Glue table.

      • databaseName (string) -- [REQUIRED]

        The name of the database the AWS Glue table belongs to.

  • allowedColumns (list) --

    [REQUIRED]

    The columns of the underlying table that can be used by collaborations or analysis rules.

    • (string) --
  • analysisMethod (string) --

    [REQUIRED]

    The analysis method for the configured tables. The only valid value is currently DIRECT_QUERY.

Return type

dict

Returns

Response Syntax

{
    'configuredTable': {
        'id': 'string',
        'arn': 'string',
        'name': 'string',
        'description': 'string',
        'tableReference': {
            'glue': {
                'tableName': 'string',
                'databaseName': 'string'
            }
        },
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'analysisRuleTypes': [
            'AGGREGATION'|'LIST',
        ],
        'analysisMethod': 'DIRECT_QUERY',
        'allowedColumns': [
            'string',
        ]
    }
}

Response Structure

  • (dict) --

    • configuredTable (dict) --

      The created configured table.

      • id (string) --

        The unique ID for the configured table.

      • arn (string) --

        The unique ARN for the configured table.

      • name (string) --

        A name for the configured table.

      • description (string) --

        A description for the configured table.

      • tableReference (dict) --

        The AWS Glue table that this configured table represents.

        Note

        This is a Tagged Union structure. Only one of the following top level keys will be set: glue. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

        'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
        
        • glue (dict) --

          If present, a reference to the AWS Glue table referred to by this table reference.

          • tableName (string) --

            The name of the AWS Glue table.

          • databaseName (string) --

            The name of the database the AWS Glue table belongs to.

      • createTime (datetime) --

        The time the configured table was created.

      • updateTime (datetime) --

        The time the configured table was last updated

      • analysisRuleTypes (list) --

        The types of analysis rules associated with this configured table. Valid values are AGGREGATION and LIST. Currently, only one analysis rule may be associated with a configured table.

        • (string) --
      • analysisMethod (string) --

        The analysis method for the configured table. The only valid value is currently DIRECT_QUERY.

      • allowedColumns (list) --

        The columns within the underlying AWS Glue table that can be utilized within collaborations.

        • (string) --

Exceptions

  • CleanRoomsService.Client.exceptions.ConflictException
  • CleanRoomsService.Client.exceptions.ServiceQuotaExceededException
  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
create_configured_table_analysis_rule(**kwargs)

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

response = client.create_configured_table_analysis_rule(
    configuredTableIdentifier='string',
    analysisRuleType='AGGREGATION'|'LIST',
    analysisRulePolicy={
        'v1': {
            'list': {
                'joinColumns': [
                    'string',
                ],
                'listColumns': [
                    'string',
                ]
            },
            'aggregation': {
                'aggregateColumns': [
                    {
                        'columnNames': [
                            'string',
                        ],
                        'function': 'SUM'|'SUM_DISTINCT'|'COUNT'|'COUNT_DISTINCT'|'AVG'
                    },
                ],
                'joinColumns': [
                    'string',
                ],
                'joinRequired': 'QUERY_RUNNER',
                'dimensionColumns': [
                    'string',
                ],
                'scalarFunctions': [
                    'TRUNC'|'ABS'|'CEILING'|'FLOOR'|'LN'|'LOG'|'ROUND'|'SQRT'|'CAST'|'LOWER'|'RTRIM'|'UPPER'|'COALESCE',
                ],
                'outputConstraints': [
                    {
                        'columnName': 'string',
                        'minimum': 123,
                        'type': 'COUNT_DISTINCT'
                    },
                ]
            }
        }
    }
)
Parameters
  • configuredTableIdentifier (string) --

    [REQUIRED]

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

  • analysisRuleType (string) --

    [REQUIRED]

    The type of analysis rule. Valid values are AGGREGATION and LIST.

  • analysisRulePolicy (dict) --

    [REQUIRED]

    The entire created configured table analysis rule object.

    Note

    This is a Tagged Union structure. Only one of the following top level keys can be set: v1.

    • v1 (dict) --

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

      Note

      This is a Tagged Union structure. Only one of the following top level keys can be set: list, aggregation.

      • 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 another members' configured tables.

          • (string) --
        • listColumns (list) -- [REQUIRED]

          Columns that can be listed in the output.

          • (string) --
      • 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

        • 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.

Return type

dict

Returns

Response Syntax

{
    'analysisRule': {
        'configuredTableId': 'string',
        'configuredTableArn': 'string',
        'policy': {
            'v1': {
                'list': {
                    'joinColumns': [
                        'string',
                    ],
                    'listColumns': [
                        'string',
                    ]
                },
                'aggregation': {
                    'aggregateColumns': [
                        {
                            'columnNames': [
                                'string',
                            ],
                            'function': 'SUM'|'SUM_DISTINCT'|'COUNT'|'COUNT_DISTINCT'|'AVG'
                        },
                    ],
                    'joinColumns': [
                        'string',
                    ],
                    'joinRequired': 'QUERY_RUNNER',
                    'dimensionColumns': [
                        'string',
                    ],
                    'scalarFunctions': [
                        'TRUNC'|'ABS'|'CEILING'|'FLOOR'|'LN'|'LOG'|'ROUND'|'SQRT'|'CAST'|'LOWER'|'RTRIM'|'UPPER'|'COALESCE',
                    ],
                    'outputConstraints': [
                        {
                            'columnName': 'string',
                            'minimum': 123,
                            'type': 'COUNT_DISTINCT'
                        },
                    ]
                }
            }
        },
        'type': 'AGGREGATION'|'LIST',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1)
    }
}

Response Structure

  • (dict) --

    • analysisRule (dict) --

      The entire created 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.

        Note

        This is a Tagged Union structure. Only one of the following top level keys will be set: v1. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

        'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
        
        • v1 (dict) --

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

          Note

          This is a Tagged Union structure. Only one of the following top level keys will be set: list, aggregation. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

          'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
          
          • 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 another members' configured tables.

              • (string) --
            • listColumns (list) --

              Columns that can be listed in the output.

              • (string) --
          • 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

            • 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.

      • type (string) --

        The type of configured table analysis rule. Valid values are AGGREGATION and LIST.

      • createTime (datetime) --

        The time the configured table analysis rule was created.

      • updateTime (datetime) --

        The time the configured table analysis rule was last updated.

Exceptions

  • CleanRoomsService.Client.exceptions.ConflictException
  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
create_configured_table_association(**kwargs)

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

See also: AWS API Documentation

Request Syntax

response = client.create_configured_table_association(
    name='string',
    description='string',
    membershipIdentifier='string',
    configuredTableIdentifier='string',
    roleArn='string'
)
Parameters
  • name (string) --

    [REQUIRED]

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

  • description (string) -- A description for the configured table association.
  • membershipIdentifier (string) --

    [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.

  • configuredTableIdentifier (string) --

    [REQUIRED]

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

  • roleArn (string) --

    [REQUIRED]

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

Return type

dict

Returns

Response Syntax

{
    'configuredTableAssociation': {
        'arn': 'string',
        'id': 'string',
        'configuredTableId': 'string',
        'configuredTableArn': 'string',
        'membershipId': 'string',
        'membershipArn': 'string',
        'roleArn': 'string',
        'name': 'string',
        'description': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1)
    }
}

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.

      • createTime (datetime) --

        The time the configured table association was created.

      • updateTime (datetime) --

        The time the configured table association was last updated.

Exceptions

  • CleanRoomsService.Client.exceptions.ConflictException
  • CleanRoomsService.Client.exceptions.ServiceQuotaExceededException
  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
create_membership(**kwargs)

Creates a membership for a specific collaboration identifier and joins the collaboration.

See also: AWS API Documentation

Request Syntax

response = client.create_membership(
    collaborationIdentifier='string',
    queryLogStatus='ENABLED'|'DISABLED'
)
Parameters
  • collaborationIdentifier (string) --

    [REQUIRED]

    The unique ID for the associated collaboration.

  • queryLogStatus (string) --

    [REQUIRED]

    An indicator as to whether query logging has been enabled or disabled for the collaboration.

Return type

dict

Returns

Response Syntax

{
    'membership': {
        'id': 'string',
        'arn': 'string',
        'collaborationArn': 'string',
        'collaborationId': 'string',
        'collaborationCreatorAccountId': 'string',
        'collaborationCreatorDisplayName': 'string',
        'collaborationName': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'status': 'ACTIVE'|'REMOVED'|'COLLABORATION_DELETED',
        'memberAbilities': [
            'CAN_QUERY'|'CAN_RECEIVE_RESULTS',
        ],
        'queryLogStatus': 'ENABLED'|'DISABLED'
    }
}

Response Structure

  • (dict) --

    • membership (dict) --

      The membership that was created.

      • id (string) --

        The unique ID of the membership.

      • arn (string) --

        The unique ARN for the membership.

      • collaborationArn (string) --

        The unique ARN for the membership's associated collaboration.

      • collaborationId (string) --

        The unique ID for the membership's collaboration.

      • collaborationCreatorAccountId (string) --

        The identifier used to reference members of the collaboration. Currently only supports AWS account ID.

      • collaborationCreatorDisplayName (string) --

        The display name of the collaboration creator.

      • collaborationName (string) --

        The name of the membership's collaboration.

      • createTime (datetime) --

        The time when the membership was created.

      • updateTime (datetime) --

        The time the membership metadata was last updated.

      • status (string) --

        The status of the membership. Valid values are ACTIVE, REMOVED, and COLLABORATION_DELETED.

      • memberAbilities (list) --

        The abilities granted to the collaboration member.

        • (string) --
      • queryLogStatus (string) --

        An indicator as to whether query logging has been enabled or disabled for the collaboration.

Exceptions

  • CleanRoomsService.Client.exceptions.ConflictException
  • CleanRoomsService.Client.exceptions.ServiceQuotaExceededException
  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
delete_collaboration(**kwargs)

Deletes a collaboration. It can only be called by the collaboration owner.

See also: AWS API Documentation

Request Syntax

response = client.delete_collaboration(
    collaborationIdentifier='string'
)
Parameters
collaborationIdentifier (string) --

[REQUIRED]

The identifier for the collaboration.

Return type
dict
Returns
Response Syntax
{}

Response Structure

  • (dict) --

Exceptions

  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
delete_configured_table(**kwargs)

Deletes a configured table.

See also: AWS API Documentation

Request Syntax

response = client.delete_configured_table(
    configuredTableIdentifier='string'
)
Parameters
configuredTableIdentifier (string) --

[REQUIRED]

The unique ID for the configured table to delete.

Return type
dict
Returns
Response Syntax
{}

Response Structure

  • (dict) --

    The empty output for a successful deletion.

Exceptions

  • CleanRoomsService.Client.exceptions.ConflictException
  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
delete_configured_table_analysis_rule(**kwargs)

Deletes a configured table analysis rule.

See also: AWS API Documentation

Request Syntax

response = client.delete_configured_table_analysis_rule(
    configuredTableIdentifier='string',
    analysisRuleType='AGGREGATION'|'LIST'
)
Parameters
  • configuredTableIdentifier (string) --

    [REQUIRED]

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

  • analysisRuleType (string) --

    [REQUIRED]

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

Return type

dict

Returns

Response Syntax

{}

Response Structure

  • (dict) --

    An empty response that indicates a successful delete.

Exceptions

  • CleanRoomsService.Client.exceptions.ConflictException
  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
delete_configured_table_association(**kwargs)

Deletes a configured table association.

See also: AWS API Documentation

Request Syntax

response = client.delete_configured_table_association(
    configuredTableAssociationIdentifier='string',
    membershipIdentifier='string'
)
Parameters
  • configuredTableAssociationIdentifier (string) --

    [REQUIRED]

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

  • membershipIdentifier (string) --

    [REQUIRED]

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

Return type

dict

Returns

Response Syntax

{}

Response Structure

  • (dict) --

Exceptions

  • CleanRoomsService.Client.exceptions.ConflictException
  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
delete_member(**kwargs)

Removes the specified member from a collaboration. The removed member is placed in the Removed status and can't interact with the collaboration. The removed member's data is inaccessible to active members of the collaboration.

See also: AWS API Documentation

Request Syntax

response = client.delete_member(
    collaborationIdentifier='string',
    accountId='string'
)
Parameters
  • collaborationIdentifier (string) --

    [REQUIRED]

    The unique identifier for the associated collaboration.

  • accountId (string) --

    [REQUIRED]

    The account ID of the member to remove.

Return type

dict

Returns

Response Syntax

{}

Response Structure

  • (dict) --

Exceptions

  • CleanRoomsService.Client.exceptions.ConflictException
  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
delete_membership(**kwargs)

Deletes a specified membership. All resources under a membership must be deleted.

See also: AWS API Documentation

Request Syntax

response = client.delete_membership(
    membershipIdentifier='string'
)
Parameters
membershipIdentifier (string) --

[REQUIRED]

The identifier for a membership resource.

Return type
dict
Returns
Response Syntax
{}

Response Structure

  • (dict) --

Exceptions

  • CleanRoomsService.Client.exceptions.ConflictException
  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
get_collaboration(**kwargs)

Returns metadata about a collaboration.

See also: AWS API Documentation

Request Syntax

response = client.get_collaboration(
    collaborationIdentifier='string'
)
Parameters
collaborationIdentifier (string) --

[REQUIRED]

The identifier for the collaboration.

Return type
dict
Returns
Response Syntax
{
    'collaboration': {
        'id': 'string',
        'arn': 'string',
        'name': 'string',
        'description': 'string',
        'creatorAccountId': 'string',
        'creatorDisplayName': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'memberStatus': 'INVITED'|'ACTIVE'|'LEFT'|'REMOVED',
        'membershipId': 'string',
        'membershipArn': 'string',
        'dataEncryptionMetadata': {
            'allowCleartext': True|False,
            'allowDuplicates': True|False,
            'allowJoinsOnColumnsWithDifferentNames': True|False,
            'preserveNulls': True|False
        },
        'queryLogStatus': 'ENABLED'|'DISABLED'
    }
}

Response Structure

  • (dict) --
    • collaboration (dict) --

      The entire collaboration for this identifier.

      • id (string) --

        The unique ID for the collaboration.

      • arn (string) --

        The unique ARN for the collaboration.

      • name (string) --

        A human-readable identifier provided by the collaboration owner. Display names are not unique.

      • description (string) --

        A description of the collaboration provided by the collaboration owner.

      • creatorAccountId (string) --

        The identifier used to reference members of the collaboration. Currently only supports AWS account ID.

      • creatorDisplayName (string) --

        A display name of the collaboration creator.

      • createTime (datetime) --

        The time when the collaboration was created.

      • updateTime (datetime) --

        The time the collaboration metadata was last updated.

      • memberStatus (string) --

        The status of a member in a collaboration.

      • membershipId (string) --

        The unique ID for your membership within the collaboration.

      • membershipArn (string) --

        The unique ARN for your membership within the collaboration.

      • dataEncryptionMetadata (dict) --

        The settings for client-side encryption for cryptographic computing.

        • allowCleartext (boolean) --

          Indicates whether encrypted tables can contain cleartext data (true) or are to cryptographically process every column (false).

        • allowDuplicates (boolean) --

          Indicates whether Fingerprint columns can contain duplicate entries (true) or are to contain only non-repeated values (false).

        • allowJoinsOnColumnsWithDifferentNames (boolean) --

          Indicates whether Fingerprint columns can be joined on any other Fingerprint column with a different name (true) or can only be joined on Fingerprint columns of the same name (false).

        • preserveNulls (boolean) --

          Indicates whether NULL values are to be copied as NULL to encrypted tables (true) or cryptographically processed (false).

      • queryLogStatus (string) --

        An indicator as to whether query logging has been enabled or disabled for the collaboration.

Exceptions

  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
get_configured_table(**kwargs)

Retrieves a configured table.

See also: AWS API Documentation

Request Syntax

response = client.get_configured_table(
    configuredTableIdentifier='string'
)
Parameters
configuredTableIdentifier (string) --

[REQUIRED]

The unique ID for the configured table to retrieve.

Return type
dict
Returns
Response Syntax
{
    'configuredTable': {
        'id': 'string',
        'arn': 'string',
        'name': 'string',
        'description': 'string',
        'tableReference': {
            'glue': {
                'tableName': 'string',
                'databaseName': 'string'
            }
        },
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'analysisRuleTypes': [
            'AGGREGATION'|'LIST',
        ],
        'analysisMethod': 'DIRECT_QUERY',
        'allowedColumns': [
            'string',
        ]
    }
}

Response Structure

  • (dict) --
    • configuredTable (dict) --

      The retrieved configured table.

      • id (string) --

        The unique ID for the configured table.

      • arn (string) --

        The unique ARN for the configured table.

      • name (string) --

        A name for the configured table.

      • description (string) --

        A description for the configured table.

      • tableReference (dict) --

        The AWS Glue table that this configured table represents.

        Note

        This is a Tagged Union structure. Only one of the following top level keys will be set: glue. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

        'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
        
        • glue (dict) --

          If present, a reference to the AWS Glue table referred to by this table reference.

          • tableName (string) --

            The name of the AWS Glue table.

          • databaseName (string) --

            The name of the database the AWS Glue table belongs to.

      • createTime (datetime) --

        The time the configured table was created.

      • updateTime (datetime) --

        The time the configured table was last updated

      • analysisRuleTypes (list) --

        The types of analysis rules associated with this configured table. Valid values are AGGREGATION and LIST. Currently, only one analysis rule may be associated with a configured table.

        • (string) --
      • analysisMethod (string) --

        The analysis method for the configured table. The only valid value is currently DIRECT_QUERY.

      • allowedColumns (list) --

        The columns within the underlying AWS Glue table that can be utilized within collaborations.

        • (string) --

Exceptions

  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
get_configured_table_analysis_rule(**kwargs)

Retrieves a configured table analysis rule.

See also: AWS API Documentation

Request Syntax

response = client.get_configured_table_analysis_rule(
    configuredTableIdentifier='string',
    analysisRuleType='AGGREGATION'|'LIST'
)
Parameters
  • configuredTableIdentifier (string) --

    [REQUIRED]

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

  • analysisRuleType (string) --

    [REQUIRED]

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

Return type

dict

Returns

Response Syntax

{
    'analysisRule': {
        'configuredTableId': 'string',
        'configuredTableArn': 'string',
        'policy': {
            'v1': {
                'list': {
                    'joinColumns': [
                        'string',
                    ],
                    'listColumns': [
                        'string',
                    ]
                },
                'aggregation': {
                    'aggregateColumns': [
                        {
                            'columnNames': [
                                'string',
                            ],
                            'function': 'SUM'|'SUM_DISTINCT'|'COUNT'|'COUNT_DISTINCT'|'AVG'
                        },
                    ],
                    'joinColumns': [
                        'string',
                    ],
                    'joinRequired': 'QUERY_RUNNER',
                    'dimensionColumns': [
                        'string',
                    ],
                    'scalarFunctions': [
                        'TRUNC'|'ABS'|'CEILING'|'FLOOR'|'LN'|'LOG'|'ROUND'|'SQRT'|'CAST'|'LOWER'|'RTRIM'|'UPPER'|'COALESCE',
                    ],
                    'outputConstraints': [
                        {
                            'columnName': 'string',
                            'minimum': 123,
                            'type': 'COUNT_DISTINCT'
                        },
                    ]
                }
            }
        },
        'type': 'AGGREGATION'|'LIST',
        '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.

        Note

        This is a Tagged Union structure. Only one of the following top level keys will be set: v1. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

        'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
        
        • v1 (dict) --

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

          Note

          This is a Tagged Union structure. Only one of the following top level keys will be set: list, aggregation. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

          'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
          
          • 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 another members' configured tables.

              • (string) --
            • listColumns (list) --

              Columns that can be listed in the output.

              • (string) --
          • 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

            • 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.

      • type (string) --

        The type of configured table analysis rule. Valid values are AGGREGATION and LIST.

      • createTime (datetime) --

        The time the configured table analysis rule was created.

      • updateTime (datetime) --

        The time the configured table analysis rule was last updated.

Exceptions

  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
get_configured_table_association(**kwargs)

Retrieves a configured table association.

See also: AWS API Documentation

Request Syntax

response = client.get_configured_table_association(
    configuredTableAssociationIdentifier='string',
    membershipIdentifier='string'
)
Parameters
  • configuredTableAssociationIdentifier (string) --

    [REQUIRED]

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

  • membershipIdentifier (string) --

    [REQUIRED]

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

Return type

dict

Returns

Response Syntax

{
    'configuredTableAssociation': {
        'arn': 'string',
        'id': 'string',
        'configuredTableId': 'string',
        'configuredTableArn': 'string',
        'membershipId': 'string',
        'membershipArn': 'string',
        'roleArn': 'string',
        'name': 'string',
        'description': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1)
    }
}

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.

      • createTime (datetime) --

        The time the configured table association was created.

      • updateTime (datetime) --

        The time the configured table association was last updated.

Exceptions

  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
get_membership(**kwargs)

Retrieves a specified membership for an identifier.

See also: AWS API Documentation

Request Syntax

response = client.get_membership(
    membershipIdentifier='string'
)
Parameters
membershipIdentifier (string) --

[REQUIRED]

The identifier for a membership resource.

Return type
dict
Returns
Response Syntax
{
    'membership': {
        'id': 'string',
        'arn': 'string',
        'collaborationArn': 'string',
        'collaborationId': 'string',
        'collaborationCreatorAccountId': 'string',
        'collaborationCreatorDisplayName': 'string',
        'collaborationName': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'status': 'ACTIVE'|'REMOVED'|'COLLABORATION_DELETED',
        'memberAbilities': [
            'CAN_QUERY'|'CAN_RECEIVE_RESULTS',
        ],
        'queryLogStatus': 'ENABLED'|'DISABLED'
    }
}

Response Structure

  • (dict) --
    • membership (dict) --

      The membership retrieved for the provided identifier.

      • id (string) --

        The unique ID of the membership.

      • arn (string) --

        The unique ARN for the membership.

      • collaborationArn (string) --

        The unique ARN for the membership's associated collaboration.

      • collaborationId (string) --

        The unique ID for the membership's collaboration.

      • collaborationCreatorAccountId (string) --

        The identifier used to reference members of the collaboration. Currently only supports AWS account ID.

      • collaborationCreatorDisplayName (string) --

        The display name of the collaboration creator.

      • collaborationName (string) --

        The name of the membership's collaboration.

      • createTime (datetime) --

        The time when the membership was created.

      • updateTime (datetime) --

        The time the membership metadata was last updated.

      • status (string) --

        The status of the membership. Valid values are ACTIVE, REMOVED, and COLLABORATION_DELETED.

      • memberAbilities (list) --

        The abilities granted to the collaboration member.

        • (string) --
      • queryLogStatus (string) --

        An indicator as to whether query logging has been enabled or disabled for the collaboration.

Exceptions

  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
get_paginator(operation_name)

Create a paginator for an operation.

Parameters
operation_name (string) -- The operation name. This is the same name as the method name on the client. For example, if the method name is create_foo, and you'd normally invoke the operation as client.create_foo(**kwargs), if the create_foo operation can be paginated, you can use the call client.get_paginator("create_foo").
Raises OperationNotPageableError
Raised if the operation is not pageable. You can use the client.can_paginate method to check if an operation is pageable.
Return type
L{botocore.paginate.Paginator}
Returns
A paginator object.
get_protected_query(**kwargs)

Returns query processing metadata.

See also: AWS API Documentation

Request Syntax

response = client.get_protected_query(
    membershipIdentifier='string',
    protectedQueryIdentifier='string'
)
Parameters
  • membershipIdentifier (string) --

    [REQUIRED]

    The identifier for a membership in a protected query instance.

  • protectedQueryIdentifier (string) --

    [REQUIRED]

    The identifier for a protected query instance.

Return type

dict

Returns

Response Syntax

{
    'protectedQuery': {
        'id': 'string',
        'membershipId': 'string',
        'membershipArn': 'string',
        'createTime': datetime(2015, 1, 1),
        'sqlParameters': {
            'queryString': 'string'
        },
        'status': 'SUBMITTED'|'STARTED'|'CANCELLED'|'CANCELLING'|'FAILED'|'SUCCESS'|'TIMED_OUT',
        'resultConfiguration': {
            'outputConfiguration': {
                's3': {
                    'resultFormat': 'CSV'|'PARQUET',
                    'bucket': 'string',
                    'keyPrefix': 'string'
                }
            }
        },
        'statistics': {
            'totalDurationInMillis': 123
        },
        'result': {
            'output': {
                's3': {
                    'location': 'string'
                }
            }
        },
        'error': {
            'message': 'string',
            'code': '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.

      • 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.

          Note

          This is a Tagged Union structure. Only one of the following top level keys will be set: s3. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

          'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
          
          • 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.

      • statistics (dict) --

        Statistics about protected query execution.

        • totalDurationInMillis (integer) --

          The duration of the Protected Query, from creation until query completion.

      • result (dict) --

        The result of the protected query.

        • output (dict) --

          The output of the protected query.

          Note

          This is a Tagged Union structure. Only one of the following top level keys will be set: s3. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

          'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
          
          • s3 (dict) --

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

            • location (string) --

              The S3 location of the result.

      • 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.

Exceptions

  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
get_schema(**kwargs)

Retrieves the schema for a relation within a collaboration.

See also: AWS API Documentation

Request Syntax

response = client.get_schema(
    collaborationIdentifier='string',
    name='string'
)
Parameters
  • collaborationIdentifier (string) --

    [REQUIRED]

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

  • name (string) --

    [REQUIRED]

    The name of the relation to retrieve the schema for.

Return type

dict

Returns

Response Syntax

{
    'schema': {
        'columns': [
            {
                'name': 'string',
                'type': 'string'
            },
        ],
        'partitionKeys': [
            {
                'name': 'string',
                'type': 'string'
            },
        ],
        'analysisRuleTypes': [
            'AGGREGATION'|'LIST',
        ],
        'analysisMethod': 'DIRECT_QUERY',
        'creatorAccountId': 'string',
        'name': 'string',
        'collaborationId': 'string',
        'collaborationArn': 'string',
        'description': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'type': 'TABLE'
    }
}

Response Structure

  • (dict) --

    • schema (dict) --

      The entire schema object.

      • columns (list) --

        The columns for the relation this schema represents.

        • (dict) --

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

          • name (string) --

            The name of the column.

          • type (string) --

            The type of the column.

      • partitionKeys (list) --

        The partition keys for the data set underlying this schema.

        • (dict) --

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

          • name (string) --

            The name of the column.

          • type (string) --

            The type of the column.

      • analysisRuleTypes (list) --

        The analysis rule types associated with the schema. Valued values are LIST and AGGREGATION. Currently, only one entry is present.

        • (string) --
      • analysisMethod (string) --

        The analysis method for the schema. The only valid value is currently DIRECT_QUERY.

      • creatorAccountId (string) --

        The unique account ID for the AWS 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 ARN for the collaboration that the schema belongs to.

      • description (string) --

        A description for the schema.

      • createTime (datetime) --

        The time the schema was created.

      • updateTime (datetime) --

        The time the schema was last updated.

      • type (string) --

        The type of schema. The only valid value is currently TABLE.

Exceptions

  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
get_schema_analysis_rule(**kwargs)

Retrieves a schema analysis rule.

See also: AWS API Documentation

Request Syntax

response = client.get_schema_analysis_rule(
    collaborationIdentifier='string',
    name='string',
    type='AGGREGATION'|'LIST'
)
Parameters
  • collaborationIdentifier (string) --

    [REQUIRED]

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

  • name (string) --

    [REQUIRED]

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

  • type (string) --

    [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.

Return type

dict

Returns

Response Syntax

{
    'analysisRule': {
        'collaborationId': 'string',
        'type': 'AGGREGATION'|'LIST',
        'name': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'policy': {
            'v1': {
                'list': {
                    'joinColumns': [
                        'string',
                    ],
                    'listColumns': [
                        'string',
                    ]
                },
                'aggregation': {
                    'aggregateColumns': [
                        {
                            'columnNames': [
                                'string',
                            ],
                            'function': 'SUM'|'SUM_DISTINCT'|'COUNT'|'COUNT_DISTINCT'|'AVG'
                        },
                    ],
                    'joinColumns': [
                        'string',
                    ],
                    'joinRequired': 'QUERY_RUNNER',
                    'dimensionColumns': [
                        'string',
                    ],
                    'scalarFunctions': [
                        'TRUNC'|'ABS'|'CEILING'|'FLOOR'|'LN'|'LOG'|'ROUND'|'SQRT'|'CAST'|'LOWER'|'RTRIM'|'UPPER'|'COALESCE',
                    ],
                    'outputConstraints': [
                        {
                            'columnName': 'string',
                            'minimum': 123,
                            'type': 'COUNT_DISTINCT'
                        },
                    ]
                }
            }
        }
    }
}

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. Valid values are AGGREGATION and LIST.

      • 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.

        Note

        This is a Tagged Union structure. Only one of the following top level keys will be set: v1. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

        'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
        
        • v1 (dict) --

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

          Note

          This is a Tagged Union structure. Only one of the following top level keys will be set: list, aggregation. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

          'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
          
          • 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 another members' configured tables.

              • (string) --
            • listColumns (list) --

              Columns that can be listed in the output.

              • (string) --
          • 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

            • 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.

Exceptions

  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
get_waiter(waiter_name)

Returns an object that can wait for some condition.

Parameters
waiter_name (str) -- The name of the waiter to get. See the waiters section of the service docs for a list of available waiters.
Returns
The specified waiter object.
Return type
botocore.waiter.Waiter
list_collaborations(**kwargs)

Lists collaborations the caller owns, is active in, or has been invited to.

See also: AWS API Documentation

Request Syntax

response = client.list_collaborations(
    nextToken='string',
    maxResults=123,
    memberStatus='INVITED'|'ACTIVE'
)
Parameters
  • nextToken (string) -- The token value retrieved from a previous call to access the next page of results.
  • maxResults (integer) -- The maximum size of the results that is returned per call. Service chooses a default if it has not been set. Service may return a nextToken even if the maximum results has not been met.
  • memberStatus (string) -- The caller's status in a collaboration.
Return type

dict

Returns

Response Syntax

{
    'nextToken': 'string',
    'collaborationList': [
        {
            'id': 'string',
            'arn': 'string',
            'name': 'string',
            'creatorAccountId': 'string',
            'creatorDisplayName': 'string',
            'createTime': datetime(2015, 1, 1),
            'updateTime': datetime(2015, 1, 1),
            'memberStatus': 'INVITED'|'ACTIVE'|'LEFT'|'REMOVED',
            'membershipId': 'string',
            'membershipArn': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • nextToken (string) --

      The token value retrieved from a previous call to access the next page of results.

    • collaborationList (list) --

      The list of collaborations.

      • (dict) --

        The metadata of the collaboration.

        • id (string) --

          The identifier for the collaboration.

        • arn (string) --

          The ARN of the collaboration.

        • name (string) --

          A human-readable identifier provided by the collaboration owner. Display names are not unique.

        • creatorAccountId (string) --

          The identifier used to reference members of the collaboration. Currently only supports AWS Account ID.

        • creatorDisplayName (string) --

          The display name of the collaboration creator.

        • createTime (datetime) --

          The time when the collaboration was created.

        • updateTime (datetime) --

          The time the collaboration metadata was last updated.

        • memberStatus (string) --

          The status of a member in a collaboration.

        • membershipId (string) --

          The identifier of a member in a collaboration.

        • membershipArn (string) --

          The ARN of a member in a collaboration.

Exceptions

  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
list_configured_table_associations(**kwargs)

Lists configured table associations for a membership.

See also: AWS API Documentation

Request Syntax

response = client.list_configured_table_associations(
    membershipIdentifier='string',
    nextToken='string',
    maxResults=123
)
Parameters
  • membershipIdentifier (string) --

    [REQUIRED]

    A unique identifier for the membership to list configured table associations for. Currently accepts the membership ID.

  • nextToken (string) -- The token value retrieved from a previous call to access the next page of results.
  • maxResults (integer) -- The maximum size of the results that is returned per call.
Return type

dict

Returns

Response Syntax

{
    'configuredTableAssociationSummaries': [
        {
            'configuredTableId': 'string',
            'membershipId': 'string',
            'membershipArn': 'string',
            'name': 'string',
            'createTime': datetime(2015, 1, 1),
            'updateTime': datetime(2015, 1, 1),
            'id': 'string',
            'arn': 'string'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • configuredTableAssociationSummaries (list) --

      The retrieved list of configured table associations.

      • (dict) --

        The configured table association summary for the objects listed by the request.

        • configuredTableId (string) --

          The unique configured table ID that this configured table association refers to.

        • membershipId (string) --

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

        • membershipArn (string) --

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

        • name (string) --

          The name of the configured table association. The table is identified by this name when running Protected Queries against the underlying data.

        • createTime (datetime) --

          The time the configured table association was created.

        • updateTime (datetime) --

          The time the configured table association was last updated.

        • id (string) --

          The unique ID for the configured table association.

        • arn (string) --

          The unique ARN for the configured table association.

    • nextToken (string) --

      The token value retrieved from a previous call to access the next page of results.

Exceptions

  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
list_configured_tables(**kwargs)

Lists configured tables.

See also: AWS API Documentation

Request Syntax

response = client.list_configured_tables(
    nextToken='string',
    maxResults=123
)
Parameters
  • nextToken (string) -- The token value retrieved from a previous call to access the next page of results.
  • maxResults (integer) -- The maximum size of the results that is returned per call.
Return type

dict

Returns

Response Syntax

{
    'configuredTableSummaries': [
        {
            'id': 'string',
            'arn': 'string',
            'name': 'string',
            'createTime': datetime(2015, 1, 1),
            'updateTime': datetime(2015, 1, 1),
            'analysisRuleTypes': [
                'AGGREGATION'|'LIST',
            ],
            'analysisMethod': 'DIRECT_QUERY'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • configuredTableSummaries (list) --

      The configured tables listed by the request.

      • (dict) --

        The member of the configured table summary list.

        • id (string) --

          The unique ID of the configured table.

        • arn (string) --

          The unique ARN of the configured table.

        • name (string) --

          The name of the configured table.

        • createTime (datetime) --

          The time the configured table was created.

        • updateTime (datetime) --

          The time the configured table was last updated.

        • analysisRuleTypes (list) --

          The types of analysis rules associated with this configured table.

          • (string) --
        • analysisMethod (string) --

          The analysis method for the configured tables. The only valid value is currently DIRECT_QUERY.

    • nextToken (string) --

      The token value retrieved from a previous call to access the next page of results.

Exceptions

  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
list_members(**kwargs)

Lists all members within a collaboration.

See also: AWS API Documentation

Request Syntax

response = client.list_members(
    collaborationIdentifier='string',
    nextToken='string',
    maxResults=123
)
Parameters
  • collaborationIdentifier (string) --

    [REQUIRED]

    The identifier of the collaboration in which the members are listed.

  • nextToken (string) -- The token value retrieved from a previous call to access the next page of results.
  • maxResults (integer) -- The maximum size of the results that is returned per call.
Return type

dict

Returns

Response Syntax

{
    'nextToken': 'string',
    'memberSummaries': [
        {
            'accountId': 'string',
            'status': 'INVITED'|'ACTIVE'|'LEFT'|'REMOVED',
            'displayName': 'string',
            'abilities': [
                'CAN_QUERY'|'CAN_RECEIVE_RESULTS',
            ],
            'createTime': datetime(2015, 1, 1),
            'updateTime': datetime(2015, 1, 1),
            'membershipId': 'string',
            'membershipArn': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • nextToken (string) --

      The token value retrieved from a previous call to access the next page of results.

    • memberSummaries (list) --

      The list of members returned by the ListMembers operation.

      • (dict) --

        The member object listed by the request.

        • accountId (string) --

          The identifier used to reference members of the collaboration. Currently only supports AWS Account ID.

        • status (string) --

          The status of the member. Valid values are INVITED, ACTIVE, LEFT, and REMOVED.

        • displayName (string) --

          The member's display name.

        • abilities (list) --

          The abilities granted to the collaboration member.

          • (string) --
        • createTime (datetime) --

          The time when the member was created.

        • updateTime (datetime) --

          The time the member metadata was last updated.

        • membershipId (string) --

          The unique ID for the member's associated membership, if present.

        • membershipArn (string) --

          The unique ARN for the member's associated membership, if present.

Exceptions

  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
list_memberships(**kwargs)

Lists all memberships resources within the caller's account.

See also: AWS API Documentation

Request Syntax

response = client.list_memberships(
    nextToken='string',
    maxResults=123,
    status='ACTIVE'|'REMOVED'|'COLLABORATION_DELETED'
)
Parameters
  • nextToken (string) -- The token value retrieved from a previous call to access the next page of results.
  • maxResults (integer) -- The maximum size of the results that is returned per call.
  • status (string) -- A filter which will return only memberships in the specified status.
Return type

dict

Returns

Response Syntax

{
    'nextToken': 'string',
    'membershipSummaries': [
        {
            'id': 'string',
            'arn': 'string',
            'collaborationArn': 'string',
            'collaborationId': 'string',
            'collaborationCreatorAccountId': 'string',
            'collaborationCreatorDisplayName': 'string',
            'collaborationName': 'string',
            'createTime': datetime(2015, 1, 1),
            'updateTime': datetime(2015, 1, 1),
            'status': 'ACTIVE'|'REMOVED'|'COLLABORATION_DELETED',
            'memberAbilities': [
                'CAN_QUERY'|'CAN_RECEIVE_RESULTS',
            ]
        },
    ]
}

Response Structure

  • (dict) --

    • nextToken (string) --

      The token value retrieved from a previous call to access the next page of results.

    • membershipSummaries (list) --

      The list of memberships returned from the ListMemberships operation.

      • (dict) --

        The membership object listed by the request.

        • id (string) --

          The unique ID for the membership's collaboration.

        • arn (string) --

          The unique ARN for the membership.

        • collaborationArn (string) --

          The unique ARN for the membership's associated collaboration.

        • collaborationId (string) --

          The unique ID for the membership's collaboration.

        • collaborationCreatorAccountId (string) --

          The identifier of the AWS principal that created the collaboration. Currently only supports AWS account ID.

        • collaborationCreatorDisplayName (string) --

          The display name of the collaboration creator.

        • collaborationName (string) --

          The name for the membership's collaboration.

        • createTime (datetime) --

          The time when the membership was created.

        • updateTime (datetime) --

          The time the membership metadata was last updated.

        • status (string) --

          The status of the membership. Valid values are ACTIVE, REMOVED, and COLLABORATION_DELETED.

        • memberAbilities (list) --

          The abilities granted to the collaboration member.

          • (string) --

Exceptions

  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
list_protected_queries(**kwargs)

Lists protected queries, sorted by the most recent query.

See also: AWS API Documentation

Request Syntax

response = client.list_protected_queries(
    membershipIdentifier='string',
    status='SUBMITTED'|'STARTED'|'CANCELLED'|'CANCELLING'|'FAILED'|'SUCCESS'|'TIMED_OUT',
    nextToken='string',
    maxResults=123
)
Parameters
  • membershipIdentifier (string) --

    [REQUIRED]

    The identifier for the membership in the collaboration.

  • status (string) -- A filter on the status of the protected query.
  • nextToken (string) -- The token value retrieved from a previous call to access the next page of results.
  • maxResults (integer) -- The maximum size of the results that is returned per call. Service chooses a default if it has not been set. Service can return a nextToken even if the maximum results has not been met.
Return type

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'
        },
    ]
}

Response Structure

  • (dict) --

    • nextToken (string) --

      The token value retrieved from a previous call to access the next page 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. Value values are SUBMITTED, STARTED, CANCELLED, CANCELLING, FAILED, SUCCESS, TIMED_OUT.

Exceptions

  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
list_schemas(**kwargs)

Lists the schemas for relations within a collaboration.

See also: AWS API Documentation

Request Syntax

response = client.list_schemas(
    collaborationIdentifier='string',
    schemaType='TABLE',
    nextToken='string',
    maxResults=123
)
Parameters
  • collaborationIdentifier (string) --

    [REQUIRED]

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

  • schemaType (string) -- If present, filter schemas by schema type. The only valid schema type is currently TABLE.
  • nextToken (string) -- The token value retrieved from a previous call to access the next page of results.
  • maxResults (integer) -- The maximum size of the results that is returned per call.
Return type

dict

Returns

Response Syntax

{
    'schemaSummaries': [
        {
            'name': 'string',
            'type': 'TABLE',
            'creatorAccountId': 'string',
            'createTime': datetime(2015, 1, 1),
            'updateTime': datetime(2015, 1, 1),
            'collaborationId': 'string',
            'collaborationArn': 'string',
            'analysisRuleTypes': [
                'AGGREGATION'|'LIST',
            ],
            'analysisMethod': 'DIRECT_QUERY'
        },
    ],
    '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. The only valid schema type is currently TABLE.

        • creatorAccountId (string) --

          The unique account ID for the AWS 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. The only valid value is currently DIRECT_QUERY.

    • nextToken (string) --

      The token value retrieved from a previous call to access the next page of results.

Exceptions

  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
start_protected_query(**kwargs)

Creates a protected query that is started by AWS Clean Rooms.

See also: AWS API Documentation

Request Syntax

response = client.start_protected_query(
    type='SQL',
    membershipIdentifier='string',
    sqlParameters={
        'queryString': 'string'
    },
    resultConfiguration={
        'outputConfiguration': {
            's3': {
                'resultFormat': 'CSV'|'PARQUET',
                'bucket': 'string',
                'keyPrefix': 'string'
            }
        }
    }
)
Parameters
  • type (string) --

    [REQUIRED]

    The type of the protected query to be started.

  • membershipIdentifier (string) --

    [REQUIRED]

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

  • sqlParameters (dict) --

    [REQUIRED]

    The protected SQL query parameters.

    • queryString (string) -- [REQUIRED]

      The query string to be submitted.

  • resultConfiguration (dict) --

    [REQUIRED]

    The details needed to write the query results.

    • outputConfiguration (dict) -- [REQUIRED]

      Configuration for protected query results.

      Note

      This is a Tagged Union structure. Only one of the following top level keys can be set: s3.

      • 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.

Return type

dict

Returns

Response Syntax

{
    'protectedQuery': {
        'id': 'string',
        'membershipId': 'string',
        'membershipArn': 'string',
        'createTime': datetime(2015, 1, 1),
        'sqlParameters': {
            'queryString': 'string'
        },
        'status': 'SUBMITTED'|'STARTED'|'CANCELLED'|'CANCELLING'|'FAILED'|'SUCCESS'|'TIMED_OUT',
        'resultConfiguration': {
            'outputConfiguration': {
                's3': {
                    'resultFormat': 'CSV'|'PARQUET',
                    'bucket': 'string',
                    'keyPrefix': 'string'
                }
            }
        },
        'statistics': {
            'totalDurationInMillis': 123
        },
        'result': {
            'output': {
                's3': {
                    'location': 'string'
                }
            }
        },
        'error': {
            'message': 'string',
            'code': '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.

      • 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.

          Note

          This is a Tagged Union structure. Only one of the following top level keys will be set: s3. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

          'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
          
          • 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.

      • statistics (dict) --

        Statistics about protected query execution.

        • totalDurationInMillis (integer) --

          The duration of the Protected Query, from creation until query completion.

      • result (dict) --

        The result of the protected query.

        • output (dict) --

          The output of the protected query.

          Note

          This is a Tagged Union structure. Only one of the following top level keys will be set: s3. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

          'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
          
          • s3 (dict) --

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

            • location (string) --

              The S3 location of the result.

      • 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.

Exceptions

  • CleanRoomsService.Client.exceptions.ServiceQuotaExceededException
  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
update_collaboration(**kwargs)

Updates collaboration metadata and can only be called by the collaboration owner.

See also: AWS API Documentation

Request Syntax

response = client.update_collaboration(
    collaborationIdentifier='string',
    name='string',
    description='string'
)
Parameters
  • collaborationIdentifier (string) --

    [REQUIRED]

    The identifier for the collaboration.

  • name (string) -- A human-readable identifier provided by the collaboration owner. Display names are not unique.
  • description (string) -- A description of the collaboration.
Return type

dict

Returns

Response Syntax

{
    'collaboration': {
        'id': 'string',
        'arn': 'string',
        'name': 'string',
        'description': 'string',
        'creatorAccountId': 'string',
        'creatorDisplayName': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'memberStatus': 'INVITED'|'ACTIVE'|'LEFT'|'REMOVED',
        'membershipId': 'string',
        'membershipArn': 'string',
        'dataEncryptionMetadata': {
            'allowCleartext': True|False,
            'allowDuplicates': True|False,
            'allowJoinsOnColumnsWithDifferentNames': True|False,
            'preserveNulls': True|False
        },
        'queryLogStatus': 'ENABLED'|'DISABLED'
    }
}

Response Structure

  • (dict) --

    • collaboration (dict) --

      The entire collaboration that has been updated.

      • id (string) --

        The unique ID for the collaboration.

      • arn (string) --

        The unique ARN for the collaboration.

      • name (string) --

        A human-readable identifier provided by the collaboration owner. Display names are not unique.

      • description (string) --

        A description of the collaboration provided by the collaboration owner.

      • creatorAccountId (string) --

        The identifier used to reference members of the collaboration. Currently only supports AWS account ID.

      • creatorDisplayName (string) --

        A display name of the collaboration creator.

      • createTime (datetime) --

        The time when the collaboration was created.

      • updateTime (datetime) --

        The time the collaboration metadata was last updated.

      • memberStatus (string) --

        The status of a member in a collaboration.

      • membershipId (string) --

        The unique ID for your membership within the collaboration.

      • membershipArn (string) --

        The unique ARN for your membership within the collaboration.

      • dataEncryptionMetadata (dict) --

        The settings for client-side encryption for cryptographic computing.

        • allowCleartext (boolean) --

          Indicates whether encrypted tables can contain cleartext data (true) or are to cryptographically process every column (false).

        • allowDuplicates (boolean) --

          Indicates whether Fingerprint columns can contain duplicate entries (true) or are to contain only non-repeated values (false).

        • allowJoinsOnColumnsWithDifferentNames (boolean) --

          Indicates whether Fingerprint columns can be joined on any other Fingerprint column with a different name (true) or can only be joined on Fingerprint columns of the same name (false).

        • preserveNulls (boolean) --

          Indicates whether NULL values are to be copied as NULL to encrypted tables (true) or cryptographically processed (false).

      • queryLogStatus (string) --

        An indicator as to whether query logging has been enabled or disabled for the collaboration.

Exceptions

  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
update_configured_table(**kwargs)

Updates a configured table.

See also: AWS API Documentation

Request Syntax

response = client.update_configured_table(
    configuredTableIdentifier='string',
    name='string',
    description='string'
)
Parameters
  • configuredTableIdentifier (string) --

    [REQUIRED]

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

  • name (string) -- A new name for the configured table.
  • description (string) -- A new description for the configured table.
Return type

dict

Returns

Response Syntax

{
    'configuredTable': {
        'id': 'string',
        'arn': 'string',
        'name': 'string',
        'description': 'string',
        'tableReference': {
            'glue': {
                'tableName': 'string',
                'databaseName': 'string'
            }
        },
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'analysisRuleTypes': [
            'AGGREGATION'|'LIST',
        ],
        'analysisMethod': 'DIRECT_QUERY',
        'allowedColumns': [
            'string',
        ]
    }
}

Response Structure

  • (dict) --

    • configuredTable (dict) --

      The updated configured table.

      • id (string) --

        The unique ID for the configured table.

      • arn (string) --

        The unique ARN for the configured table.

      • name (string) --

        A name for the configured table.

      • description (string) --

        A description for the configured table.

      • tableReference (dict) --

        The AWS Glue table that this configured table represents.

        Note

        This is a Tagged Union structure. Only one of the following top level keys will be set: glue. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

        'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
        
        • glue (dict) --

          If present, a reference to the AWS Glue table referred to by this table reference.

          • tableName (string) --

            The name of the AWS Glue table.

          • databaseName (string) --

            The name of the database the AWS Glue table belongs to.

      • createTime (datetime) --

        The time the configured table was created.

      • updateTime (datetime) --

        The time the configured table was last updated

      • analysisRuleTypes (list) --

        The types of analysis rules associated with this configured table. Valid values are AGGREGATION and LIST. Currently, only one analysis rule may be associated with a configured table.

        • (string) --
      • analysisMethod (string) --

        The analysis method for the configured table. The only valid value is currently DIRECT_QUERY.

      • allowedColumns (list) --

        The columns within the underlying AWS Glue table that can be utilized within collaborations.

        • (string) --

Exceptions

  • CleanRoomsService.Client.exceptions.ConflictException
  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
update_configured_table_analysis_rule(**kwargs)

Updates a configured table analysis rule.

See also: AWS API Documentation

Request Syntax

response = client.update_configured_table_analysis_rule(
    configuredTableIdentifier='string',
    analysisRuleType='AGGREGATION'|'LIST',
    analysisRulePolicy={
        'v1': {
            'list': {
                'joinColumns': [
                    'string',
                ],
                'listColumns': [
                    'string',
                ]
            },
            'aggregation': {
                'aggregateColumns': [
                    {
                        'columnNames': [
                            'string',
                        ],
                        'function': 'SUM'|'SUM_DISTINCT'|'COUNT'|'COUNT_DISTINCT'|'AVG'
                    },
                ],
                'joinColumns': [
                    'string',
                ],
                'joinRequired': 'QUERY_RUNNER',
                'dimensionColumns': [
                    'string',
                ],
                'scalarFunctions': [
                    'TRUNC'|'ABS'|'CEILING'|'FLOOR'|'LN'|'LOG'|'ROUND'|'SQRT'|'CAST'|'LOWER'|'RTRIM'|'UPPER'|'COALESCE',
                ],
                'outputConstraints': [
                    {
                        'columnName': 'string',
                        'minimum': 123,
                        'type': 'COUNT_DISTINCT'
                    },
                ]
            }
        }
    }
)
Parameters
  • configuredTableIdentifier (string) --

    [REQUIRED]

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

  • analysisRuleType (string) --

    [REQUIRED]

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

  • analysisRulePolicy (dict) --

    [REQUIRED]

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

    Note

    This is a Tagged Union structure. Only one of the following top level keys can be set: v1.

    • v1 (dict) --

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

      Note

      This is a Tagged Union structure. Only one of the following top level keys can be set: list, aggregation.

      • 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 another members' configured tables.

          • (string) --
        • listColumns (list) -- [REQUIRED]

          Columns that can be listed in the output.

          • (string) --
      • 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

        • 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.

Return type

dict

Returns

Response Syntax

{
    'analysisRule': {
        'configuredTableId': 'string',
        'configuredTableArn': 'string',
        'policy': {
            'v1': {
                'list': {
                    'joinColumns': [
                        'string',
                    ],
                    'listColumns': [
                        'string',
                    ]
                },
                'aggregation': {
                    'aggregateColumns': [
                        {
                            'columnNames': [
                                'string',
                            ],
                            'function': 'SUM'|'SUM_DISTINCT'|'COUNT'|'COUNT_DISTINCT'|'AVG'
                        },
                    ],
                    'joinColumns': [
                        'string',
                    ],
                    'joinRequired': 'QUERY_RUNNER',
                    'dimensionColumns': [
                        'string',
                    ],
                    'scalarFunctions': [
                        'TRUNC'|'ABS'|'CEILING'|'FLOOR'|'LN'|'LOG'|'ROUND'|'SQRT'|'CAST'|'LOWER'|'RTRIM'|'UPPER'|'COALESCE',
                    ],
                    'outputConstraints': [
                        {
                            'columnName': 'string',
                            'minimum': 123,
                            'type': 'COUNT_DISTINCT'
                        },
                    ]
                }
            }
        },
        'type': 'AGGREGATION'|'LIST',
        '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.

        Note

        This is a Tagged Union structure. Only one of the following top level keys will be set: v1. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

        'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
        
        • v1 (dict) --

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

          Note

          This is a Tagged Union structure. Only one of the following top level keys will be set: list, aggregation. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

          'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
          
          • 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 another members' configured tables.

              • (string) --
            • listColumns (list) --

              Columns that can be listed in the output.

              • (string) --
          • 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

            • 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.

      • type (string) --

        The type of configured table analysis rule. Valid values are AGGREGATION and LIST.

      • createTime (datetime) --

        The time the configured table analysis rule was created.

      • updateTime (datetime) --

        The time the configured table analysis rule was last updated.

Exceptions

  • CleanRoomsService.Client.exceptions.ConflictException
  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
update_configured_table_association(**kwargs)

Updates a configured table association.

See also: AWS API Documentation

Request Syntax

response = client.update_configured_table_association(
    configuredTableAssociationIdentifier='string',
    membershipIdentifier='string',
    description='string',
    roleArn='string'
)
Parameters
  • configuredTableAssociationIdentifier (string) --

    [REQUIRED]

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

  • membershipIdentifier (string) --

    [REQUIRED]

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

  • description (string) -- A new description for the configured table association.
  • roleArn (string) -- The service will assume this role to access catalog metadata and query the table.
Return type

dict

Returns

Response Syntax

{
    'configuredTableAssociation': {
        'arn': 'string',
        'id': 'string',
        'configuredTableId': 'string',
        'configuredTableArn': 'string',
        'membershipId': 'string',
        'membershipArn': 'string',
        'roleArn': 'string',
        'name': 'string',
        'description': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1)
    }
}

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.

      • createTime (datetime) --

        The time the configured table association was created.

      • updateTime (datetime) --

        The time the configured table association was last updated.

Exceptions

  • CleanRoomsService.Client.exceptions.ConflictException
  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
update_membership(**kwargs)

Updates a membership.

See also: AWS API Documentation

Request Syntax

response = client.update_membership(
    membershipIdentifier='string',
    queryLogStatus='ENABLED'|'DISABLED'
)
Parameters
  • membershipIdentifier (string) --

    [REQUIRED]

    The unique identifier of the membership.

  • queryLogStatus (string) -- An indicator as to whether query logging has been enabled or disabled for the collaboration.
Return type

dict

Returns

Response Syntax

{
    'membership': {
        'id': 'string',
        'arn': 'string',
        'collaborationArn': 'string',
        'collaborationId': 'string',
        'collaborationCreatorAccountId': 'string',
        'collaborationCreatorDisplayName': 'string',
        'collaborationName': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'status': 'ACTIVE'|'REMOVED'|'COLLABORATION_DELETED',
        'memberAbilities': [
            'CAN_QUERY'|'CAN_RECEIVE_RESULTS',
        ],
        'queryLogStatus': 'ENABLED'|'DISABLED'
    }
}

Response Structure

  • (dict) --

    • membership (dict) --

      The membership object.

      • id (string) --

        The unique ID of the membership.

      • arn (string) --

        The unique ARN for the membership.

      • collaborationArn (string) --

        The unique ARN for the membership's associated collaboration.

      • collaborationId (string) --

        The unique ID for the membership's collaboration.

      • collaborationCreatorAccountId (string) --

        The identifier used to reference members of the collaboration. Currently only supports AWS account ID.

      • collaborationCreatorDisplayName (string) --

        The display name of the collaboration creator.

      • collaborationName (string) --

        The name of the membership's collaboration.

      • createTime (datetime) --

        The time when the membership was created.

      • updateTime (datetime) --

        The time the membership metadata was last updated.

      • status (string) --

        The status of the membership. Valid values are ACTIVE, REMOVED, and COLLABORATION_DELETED.

      • memberAbilities (list) --

        The abilities granted to the collaboration member.

        • (string) --
      • queryLogStatus (string) --

        An indicator as to whether query logging has been enabled or disabled for the collaboration.

Exceptions

  • CleanRoomsService.Client.exceptions.ConflictException
  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException
update_protected_query(**kwargs)

Updates the processing of a currently running query.

See also: AWS API Documentation

Request Syntax

response = client.update_protected_query(
    membershipIdentifier='string',
    protectedQueryIdentifier='string',
    targetStatus='CANCELLED'
)
Parameters
  • membershipIdentifier (string) --

    [REQUIRED]

    The identifier for a member of a protected query instance.

  • protectedQueryIdentifier (string) --

    [REQUIRED]

    The identifier for a protected query instance.

  • targetStatus (string) --

    [REQUIRED]

    The target status of a query. Used to update the execution status of a currently running query.

Return type

dict

Returns

Response Syntax

{
    'protectedQuery': {
        'id': 'string',
        'membershipId': 'string',
        'membershipArn': 'string',
        'createTime': datetime(2015, 1, 1),
        'sqlParameters': {
            'queryString': 'string'
        },
        'status': 'SUBMITTED'|'STARTED'|'CANCELLED'|'CANCELLING'|'FAILED'|'SUCCESS'|'TIMED_OUT',
        'resultConfiguration': {
            'outputConfiguration': {
                's3': {
                    'resultFormat': 'CSV'|'PARQUET',
                    'bucket': 'string',
                    'keyPrefix': 'string'
                }
            }
        },
        'statistics': {
            'totalDurationInMillis': 123
        },
        'result': {
            'output': {
                's3': {
                    'location': 'string'
                }
            }
        },
        'error': {
            'message': 'string',
            'code': '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.

      • 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.

          Note

          This is a Tagged Union structure. Only one of the following top level keys will be set: s3. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

          'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
          
          • 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.

      • statistics (dict) --

        Statistics about protected query execution.

        • totalDurationInMillis (integer) --

          The duration of the Protected Query, from creation until query completion.

      • result (dict) --

        The result of the protected query.

        • output (dict) --

          The output of the protected query.

          Note

          This is a Tagged Union structure. Only one of the following top level keys will be set: s3. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

          'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
          
          • s3 (dict) --

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

            • location (string) --

              The S3 location of the result.

      • 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.

Exceptions

  • CleanRoomsService.Client.exceptions.ConflictException
  • CleanRoomsService.Client.exceptions.ResourceNotFoundException
  • CleanRoomsService.Client.exceptions.InternalServerException
  • CleanRoomsService.Client.exceptions.ValidationException
  • CleanRoomsService.Client.exceptions.ThrottlingException
  • CleanRoomsService.Client.exceptions.AccessDeniedException

Paginators

The available paginators are:

class CleanRoomsService.Paginator.ListCollaborations
paginator = client.get_paginator('list_collaborations')
paginate(**kwargs)

Creates an iterator that will paginate through responses from CleanRoomsService.Client.list_collaborations().

See also: AWS API Documentation

Request Syntax

response_iterator = paginator.paginate(
    memberStatus='INVITED'|'ACTIVE',
    PaginationConfig={
        'MaxItems': 123,
        'PageSize': 123,
        'StartingToken': 'string'
    }
)
Parameters
  • memberStatus (string) -- The caller's status in a collaboration.
  • PaginationConfig (dict) --

    A dictionary that provides parameters to control pagination.

    • MaxItems (integer) --

      The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.

    • PageSize (integer) --

      The size of each page.

    • StartingToken (string) --

      A token to specify where to start paginating. This is the NextToken from a previous response.

Return type

dict

Returns

Response Syntax

{
    'collaborationList': [
        {
            'id': 'string',
            'arn': 'string',
            'name': 'string',
            'creatorAccountId': 'string',
            'creatorDisplayName': 'string',
            'createTime': datetime(2015, 1, 1),
            'updateTime': datetime(2015, 1, 1),
            'memberStatus': 'INVITED'|'ACTIVE'|'LEFT'|'REMOVED',
            'membershipId': 'string',
            'membershipArn': 'string'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • collaborationList (list) --

      The list of collaborations.

      • (dict) --

        The metadata of the collaboration.

        • id (string) --

          The identifier for the collaboration.

        • arn (string) --

          The ARN of the collaboration.

        • name (string) --

          A human-readable identifier provided by the collaboration owner. Display names are not unique.

        • creatorAccountId (string) --

          The identifier used to reference members of the collaboration. Currently only supports AWS Account ID.

        • creatorDisplayName (string) --

          The display name of the collaboration creator.

        • createTime (datetime) --

          The time when the collaboration was created.

        • updateTime (datetime) --

          The time the collaboration metadata was last updated.

        • memberStatus (string) --

          The status of a member in a collaboration.

        • membershipId (string) --

          The identifier of a member in a collaboration.

        • membershipArn (string) --

          The ARN of a member in a collaboration.

    • NextToken (string) --

      A token to resume pagination.

class CleanRoomsService.Paginator.ListConfiguredTableAssociations
paginator = client.get_paginator('list_configured_table_associations')
paginate(**kwargs)

Creates an iterator that will paginate through responses from CleanRoomsService.Client.list_configured_table_associations().

See also: AWS API Documentation

Request Syntax

response_iterator = paginator.paginate(
    membershipIdentifier='string',
    PaginationConfig={
        'MaxItems': 123,
        'PageSize': 123,
        'StartingToken': 'string'
    }
)
Parameters
  • membershipIdentifier (string) --

    [REQUIRED]

    A unique identifier for the membership to list configured table associations for. Currently accepts the membership ID.

  • PaginationConfig (dict) --

    A dictionary that provides parameters to control pagination.

    • MaxItems (integer) --

      The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.

    • PageSize (integer) --

      The size of each page.

    • StartingToken (string) --

      A token to specify where to start paginating. This is the NextToken from a previous response.

Return type

dict

Returns

Response Syntax

{
    'configuredTableAssociationSummaries': [
        {
            'configuredTableId': 'string',
            'membershipId': 'string',
            'membershipArn': 'string',
            'name': 'string',
            'createTime': datetime(2015, 1, 1),
            'updateTime': datetime(2015, 1, 1),
            'id': 'string',
            'arn': 'string'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • configuredTableAssociationSummaries (list) --

      The retrieved list of configured table associations.

      • (dict) --

        The configured table association summary for the objects listed by the request.

        • configuredTableId (string) --

          The unique configured table ID that this configured table association refers to.

        • membershipId (string) --

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

        • membershipArn (string) --

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

        • name (string) --

          The name of the configured table association. The table is identified by this name when running Protected Queries against the underlying data.

        • createTime (datetime) --

          The time the configured table association was created.

        • updateTime (datetime) --

          The time the configured table association was last updated.

        • id (string) --

          The unique ID for the configured table association.

        • arn (string) --

          The unique ARN for the configured table association.

    • NextToken (string) --

      A token to resume pagination.

class CleanRoomsService.Paginator.ListConfiguredTables
paginator = client.get_paginator('list_configured_tables')
paginate(**kwargs)

Creates an iterator that will paginate through responses from CleanRoomsService.Client.list_configured_tables().

See also: AWS API Documentation

Request Syntax

response_iterator = paginator.paginate(
    PaginationConfig={
        'MaxItems': 123,
        'PageSize': 123,
        'StartingToken': 'string'
    }
)
Parameters
PaginationConfig (dict) --

A dictionary that provides parameters to control pagination.

  • MaxItems (integer) --

    The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.

  • PageSize (integer) --

    The size of each page.

  • StartingToken (string) --

    A token to specify where to start paginating. This is the NextToken from a previous response.

Return type
dict
Returns
Response Syntax
{
    'configuredTableSummaries': [
        {
            'id': 'string',
            'arn': 'string',
            'name': 'string',
            'createTime': datetime(2015, 1, 1),
            'updateTime': datetime(2015, 1, 1),
            'analysisRuleTypes': [
                'AGGREGATION'|'LIST',
            ],
            'analysisMethod': 'DIRECT_QUERY'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --
    • configuredTableSummaries (list) --

      The configured tables listed by the request.

      • (dict) --

        The member of the configured table summary list.

        • id (string) --

          The unique ID of the configured table.

        • arn (string) --

          The unique ARN of the configured table.

        • name (string) --

          The name of the configured table.

        • createTime (datetime) --

          The time the configured table was created.

        • updateTime (datetime) --

          The time the configured table was last updated.

        • analysisRuleTypes (list) --

          The types of analysis rules associated with this configured table.

          • (string) --
        • analysisMethod (string) --

          The analysis method for the configured tables. The only valid value is currently DIRECT_QUERY.

    • NextToken (string) --

      A token to resume pagination.

class CleanRoomsService.Paginator.ListMembers
paginator = client.get_paginator('list_members')
paginate(**kwargs)

Creates an iterator that will paginate through responses from CleanRoomsService.Client.list_members().

See also: AWS API Documentation

Request Syntax

response_iterator = paginator.paginate(
    collaborationIdentifier='string',
    PaginationConfig={
        'MaxItems': 123,
        'PageSize': 123,
        'StartingToken': 'string'
    }
)
Parameters
  • collaborationIdentifier (string) --

    [REQUIRED]

    The identifier of the collaboration in which the members are listed.

  • PaginationConfig (dict) --

    A dictionary that provides parameters to control pagination.

    • MaxItems (integer) --

      The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.

    • PageSize (integer) --

      The size of each page.

    • StartingToken (string) --

      A token to specify where to start paginating. This is the NextToken from a previous response.

Return type

dict

Returns

Response Syntax

{
    'memberSummaries': [
        {
            'accountId': 'string',
            'status': 'INVITED'|'ACTIVE'|'LEFT'|'REMOVED',
            'displayName': 'string',
            'abilities': [
                'CAN_QUERY'|'CAN_RECEIVE_RESULTS',
            ],
            'createTime': datetime(2015, 1, 1),
            'updateTime': datetime(2015, 1, 1),
            'membershipId': 'string',
            'membershipArn': 'string'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • memberSummaries (list) --

      The list of members returned by the ListMembers operation.

      • (dict) --

        The member object listed by the request.

        • accountId (string) --

          The identifier used to reference members of the collaboration. Currently only supports AWS Account ID.

        • status (string) --

          The status of the member. Valid values are INVITED, ACTIVE, LEFT, and REMOVED.

        • displayName (string) --

          The member's display name.

        • abilities (list) --

          The abilities granted to the collaboration member.

          • (string) --
        • createTime (datetime) --

          The time when the member was created.

        • updateTime (datetime) --

          The time the member metadata was last updated.

        • membershipId (string) --

          The unique ID for the member's associated membership, if present.

        • membershipArn (string) --

          The unique ARN for the member's associated membership, if present.

    • NextToken (string) --

      A token to resume pagination.

class CleanRoomsService.Paginator.ListMemberships
paginator = client.get_paginator('list_memberships')
paginate(**kwargs)

Creates an iterator that will paginate through responses from CleanRoomsService.Client.list_memberships().

See also: AWS API Documentation

Request Syntax

response_iterator = paginator.paginate(
    status='ACTIVE'|'REMOVED'|'COLLABORATION_DELETED',
    PaginationConfig={
        'MaxItems': 123,
        'PageSize': 123,
        'StartingToken': 'string'
    }
)
Parameters
  • status (string) -- A filter which will return only memberships in the specified status.
  • PaginationConfig (dict) --

    A dictionary that provides parameters to control pagination.

    • MaxItems (integer) --

      The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.

    • PageSize (integer) --

      The size of each page.

    • StartingToken (string) --

      A token to specify where to start paginating. This is the NextToken from a previous response.

Return type

dict

Returns

Response Syntax

{
    'membershipSummaries': [
        {
            'id': 'string',
            'arn': 'string',
            'collaborationArn': 'string',
            'collaborationId': 'string',
            'collaborationCreatorAccountId': 'string',
            'collaborationCreatorDisplayName': 'string',
            'collaborationName': 'string',
            'createTime': datetime(2015, 1, 1),
            'updateTime': datetime(2015, 1, 1),
            'status': 'ACTIVE'|'REMOVED'|'COLLABORATION_DELETED',
            'memberAbilities': [
                'CAN_QUERY'|'CAN_RECEIVE_RESULTS',
            ]
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • membershipSummaries (list) --

      The list of memberships returned from the ListMemberships operation.

      • (dict) --

        The membership object listed by the request.

        • id (string) --

          The unique ID for the membership's collaboration.

        • arn (string) --

          The unique ARN for the membership.

        • collaborationArn (string) --

          The unique ARN for the membership's associated collaboration.

        • collaborationId (string) --

          The unique ID for the membership's collaboration.

        • collaborationCreatorAccountId (string) --

          The identifier of the AWS principal that created the collaboration. Currently only supports AWS account ID.

        • collaborationCreatorDisplayName (string) --

          The display name of the collaboration creator.

        • collaborationName (string) --

          The name for the membership's collaboration.

        • createTime (datetime) --

          The time when the membership was created.

        • updateTime (datetime) --

          The time the membership metadata was last updated.

        • status (string) --

          The status of the membership. Valid values are ACTIVE, REMOVED, and COLLABORATION_DELETED.

        • memberAbilities (list) --

          The abilities granted to the collaboration member.

          • (string) --
    • NextToken (string) --

      A token to resume pagination.

class CleanRoomsService.Paginator.ListProtectedQueries
paginator = client.get_paginator('list_protected_queries')
paginate(**kwargs)

Creates an iterator that will paginate through responses from CleanRoomsService.Client.list_protected_queries().

See also: AWS API Documentation

Request Syntax

response_iterator = paginator.paginate(
    membershipIdentifier='string',
    status='SUBMITTED'|'STARTED'|'CANCELLED'|'CANCELLING'|'FAILED'|'SUCCESS'|'TIMED_OUT',
    PaginationConfig={
        'MaxItems': 123,
        'PageSize': 123,
        'StartingToken': 'string'
    }
)
Parameters
  • membershipIdentifier (string) --

    [REQUIRED]

    The identifier for the membership in the collaboration.

  • status (string) -- A filter on the status of the protected query.
  • PaginationConfig (dict) --

    A dictionary that provides parameters to control pagination.

    • MaxItems (integer) --

      The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.

    • PageSize (integer) --

      The size of each page.

    • StartingToken (string) --

      A token to specify where to start paginating. This is the NextToken from a previous response.

Return type

dict

Returns

Response Syntax

{
    'protectedQueries': [
        {
            'id': 'string',
            'membershipId': 'string',
            'membershipArn': 'string',
            'createTime': datetime(2015, 1, 1),
            'status': 'SUBMITTED'|'STARTED'|'CANCELLED'|'CANCELLING'|'FAILED'|'SUCCESS'|'TIMED_OUT'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • 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. Value values are SUBMITTED, STARTED, CANCELLED, CANCELLING, FAILED, SUCCESS, TIMED_OUT.

    • NextToken (string) --

      A token to resume pagination.

class CleanRoomsService.Paginator.ListSchemas
paginator = client.get_paginator('list_schemas')
paginate(**kwargs)

Creates an iterator that will paginate through responses from CleanRoomsService.Client.list_schemas().

See also: AWS API Documentation

Request Syntax

response_iterator = paginator.paginate(
    collaborationIdentifier='string',
    schemaType='TABLE',
    PaginationConfig={
        'MaxItems': 123,
        'PageSize': 123,
        'StartingToken': 'string'
    }
)
Parameters
  • collaborationIdentifier (string) --

    [REQUIRED]

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

  • schemaType (string) -- If present, filter schemas by schema type. The only valid schema type is currently TABLE.
  • PaginationConfig (dict) --

    A dictionary that provides parameters to control pagination.

    • MaxItems (integer) --

      The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.

    • PageSize (integer) --

      The size of each page.

    • StartingToken (string) --

      A token to specify where to start paginating. This is the NextToken from a previous response.

Return type

dict

Returns

Response Syntax

{
    'schemaSummaries': [
        {
            'name': 'string',
            'type': 'TABLE',
            'creatorAccountId': 'string',
            'createTime': datetime(2015, 1, 1),
            'updateTime': datetime(2015, 1, 1),
            'collaborationId': 'string',
            'collaborationArn': 'string',
            'analysisRuleTypes': [
                'AGGREGATION'|'LIST',
            ],
            'analysisMethod': 'DIRECT_QUERY'
        },
    ],
    '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. The only valid schema type is currently TABLE.

        • creatorAccountId (string) --

          The unique account ID for the AWS 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. The only valid value is currently DIRECT_QUERY.

    • NextToken (string) --

      A token to resume pagination.