AWS Clean Rooms Service

2023/07/31 - AWS Clean Rooms Service - 8 new 15 updated api methods

Changes  This release introduces custom SQL queries - an expanded set of SQL you can run. This release adds analysis templates, a new resource for storing pre-defined custom SQL queries ahead of time. This release also adds the Custom analysis rule, which lets you approve analysis templates for querying.

BatchGetCollaborationAnalysisTemplate (new) Link ¶

Retrieves multiple analysis templates within a collaboration by their Amazon Resource Names (ARNs).

See also: AWS API Documentation

Request Syntax

client.batch_get_collaboration_analysis_template(
    collaborationIdentifier='string',
    analysisTemplateArns=[
        'string',
    ]
)
type collaborationIdentifier

string

param collaborationIdentifier

[REQUIRED]

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

type analysisTemplateArns

list

param analysisTemplateArns

[REQUIRED]

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

  • (string) --

rtype

dict

returns

Response Syntax

{
    'collaborationAnalysisTemplates': [
        {
            'id': 'string',
            'arn': 'string',
            'collaborationId': 'string',
            'collaborationArn': 'string',
            'description': 'string',
            'creatorAccountId': 'string',
            'name': 'string',
            'createTime': datetime(2015, 1, 1),
            'updateTime': datetime(2015, 1, 1),
            'schema': {
                'referencedTables': [
                    'string',
                ]
            },
            'format': 'SQL',
            'source': {
                'text': 'string'
            },
            'analysisParameters': [
                {
                    'name': 'string',
                    'type': 'SMALLINT'|'INTEGER'|'BIGINT'|'DECIMAL'|'REAL'|'DOUBLE_PRECISION'|'BOOLEAN'|'CHAR'|'VARCHAR'|'DATE'|'TIMESTAMP'|'TIMESTAMPTZ'|'TIME'|'TIMETZ'|'VARBYTE',
                    'defaultValue': 'string'
                },
            ]
        },
    ],
    'errors': [
        {
            'arn': 'string',
            'code': 'string',
            'message': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • collaborationAnalysisTemplates (list) --

      The retrieved list of analysis templates within a collaboration.

      • (dict) --

        The analysis template within a collaboration.

        • id (string) --

          The identifier of the analysis template.

        • arn (string) --

          The Amazon Resource Name (ARN) of the analysis template.

        • collaborationId (string) --

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

        • collaborationArn (string) --

          The unique ARN for the analysis template’s associated collaboration.

        • description (string) --

          The description of the analysis template.

        • creatorAccountId (string) --

          The identifier used to reference members of the collaboration. Currently only supports Amazon Web Services account ID.

        • name (string) --

          The name of the analysis template.

        • createTime (datetime) --

          The time that the analysis template within a collaboration was created.

        • updateTime (datetime) --

          The time that the analysis template in the collaboration was last updated.

        • schema (dict) --

          The entire schema object.

          • referencedTables (list) --

            The tables referenced in the analysis schema.

            • (string) --

        • format (string) --

          The format of the analysis template in the collaboration.

        • source (dict) --

          The source of the analysis template within a collaboration.

          Note

          This is a Tagged Union structure. Only one of the following top level keys will be set: text. 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'}
          • text (string) --

            The query text.

        • analysisParameters (list) --

          The analysis parameters that have been specified in the analysis template.

          • (dict) --

            Optional. The member who can query can provide this placeholder for a literal data value in an analysis template.

            • name (string) --

              The name of the parameter. The name must use only alphanumeric, underscore (_), or hyphen (-) characters but cannot start or end with a hyphen.

            • type (string) --

              The type of parameter.

            • defaultValue (string) --

              Optional. The default value that is applied in the analysis template. The member who can query can override this value in the query editor.

    • errors (list) --

      Error reasons for collaboration analysis templates that could not be retrieved. One error is returned for every collaboration analysis template that could not be retrieved.

      • (dict) --

        Details of errors thrown by the call to retrieve multiple analysis templates within a collaboration by their identifiers.

        • arn (string) --

          The Amazon Resource Name (ARN) of the analysis template.

        • code (string) --

          An error code for the error.

        • message (string) --

          A description of why the call failed.

GetAnalysisTemplate (new) Link ¶

Retrieves an analysis template.

See also: AWS API Documentation

Request Syntax

client.get_analysis_template(
    membershipIdentifier='string',
    analysisTemplateIdentifier='string'
)
type membershipIdentifier

string

param membershipIdentifier

[REQUIRED]

The identifier for a membership resource.

type analysisTemplateIdentifier

string

param analysisTemplateIdentifier

[REQUIRED]

The identifier for the analysis template resource.

rtype

dict

returns

Response Syntax

{
    'analysisTemplate': {
        'id': 'string',
        'arn': 'string',
        'collaborationId': 'string',
        'collaborationArn': 'string',
        'membershipId': 'string',
        'membershipArn': 'string',
        'description': 'string',
        'name': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'schema': {
            'referencedTables': [
                'string',
            ]
        },
        'format': 'SQL',
        'source': {
            'text': 'string'
        },
        'analysisParameters': [
            {
                'name': 'string',
                'type': 'SMALLINT'|'INTEGER'|'BIGINT'|'DECIMAL'|'REAL'|'DOUBLE_PRECISION'|'BOOLEAN'|'CHAR'|'VARCHAR'|'DATE'|'TIMESTAMP'|'TIMESTAMPTZ'|'TIME'|'TIMETZ'|'VARBYTE',
                'defaultValue': 'string'
            },
        ]
    }
}

Response Structure

  • (dict) --

    • analysisTemplate (dict) --

      The analysis template.

      • id (string) --

        The identifier for the analysis template.

      • arn (string) --

        The Amazon Resource Name (ARN) of the analysis template.

      • collaborationId (string) --

        The unique ID for the associated collaboration of the analysis template.

      • collaborationArn (string) --

        The unique ARN for the analysis template’s associated collaboration.

      • membershipId (string) --

        The identifier of a member who created the analysis template.

      • membershipArn (string) --

        The Amazon Resource Name (ARN) of the member who created the analysis template.

      • description (string) --

        The description of the analysis template.

      • name (string) --

        The name of the analysis template.

      • createTime (datetime) --

        The time that the analysis template was created.

      • updateTime (datetime) --

        The time that the analysis template was last updated.

      • schema (dict) --

        The entire schema object.

        • referencedTables (list) --

          The tables referenced in the analysis schema.

          • (string) --

      • format (string) --

        The format of the analysis template.

      • source (dict) --

        The source of the analysis template.

        Note

        This is a Tagged Union structure. Only one of the following top level keys will be set: text. 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'}
        • text (string) --

          The query text.

      • analysisParameters (list) --

        The parameters of the analysis template.

        • (dict) --

          Optional. The member who can query can provide this placeholder for a literal data value in an analysis template.

          • name (string) --

            The name of the parameter. The name must use only alphanumeric, underscore (_), or hyphen (-) characters but cannot start or end with a hyphen.

          • type (string) --

            The type of parameter.

          • defaultValue (string) --

            Optional. The default value that is applied in the analysis template. The member who can query can override this value in the query editor.

GetCollaborationAnalysisTemplate (new) Link ¶

Retrieves an analysis template within a collaboration.

See also: AWS API Documentation

Request Syntax

client.get_collaboration_analysis_template(
    collaborationIdentifier='string',
    analysisTemplateArn='string'
)
type collaborationIdentifier

string

param collaborationIdentifier

[REQUIRED]

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

type analysisTemplateArn

string

param analysisTemplateArn

[REQUIRED]

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

rtype

dict

returns

Response Syntax

{
    'collaborationAnalysisTemplate': {
        'id': 'string',
        'arn': 'string',
        'collaborationId': 'string',
        'collaborationArn': 'string',
        'description': 'string',
        'creatorAccountId': 'string',
        'name': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'schema': {
            'referencedTables': [
                'string',
            ]
        },
        'format': 'SQL',
        'source': {
            'text': 'string'
        },
        'analysisParameters': [
            {
                'name': 'string',
                'type': 'SMALLINT'|'INTEGER'|'BIGINT'|'DECIMAL'|'REAL'|'DOUBLE_PRECISION'|'BOOLEAN'|'CHAR'|'VARCHAR'|'DATE'|'TIMESTAMP'|'TIMESTAMPTZ'|'TIME'|'TIMETZ'|'VARBYTE',
                'defaultValue': 'string'
            },
        ]
    }
}

Response Structure

  • (dict) --

    • collaborationAnalysisTemplate (dict) --

      The analysis template within a collaboration.

      • id (string) --

        The identifier of the analysis template.

      • arn (string) --

        The Amazon Resource Name (ARN) of the analysis template.

      • collaborationId (string) --

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

      • collaborationArn (string) --

        The unique ARN for the analysis template’s associated collaboration.

      • description (string) --

        The description of the analysis template.

      • creatorAccountId (string) --

        The identifier used to reference members of the collaboration. Currently only supports Amazon Web Services account ID.

      • name (string) --

        The name of the analysis template.

      • createTime (datetime) --

        The time that the analysis template within a collaboration was created.

      • updateTime (datetime) --

        The time that the analysis template in the collaboration was last updated.

      • schema (dict) --

        The entire schema object.

        • referencedTables (list) --

          The tables referenced in the analysis schema.

          • (string) --

      • format (string) --

        The format of the analysis template in the collaboration.

      • source (dict) --

        The source of the analysis template within a collaboration.

        Note

        This is a Tagged Union structure. Only one of the following top level keys will be set: text. 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'}
        • text (string) --

          The query text.

      • analysisParameters (list) --

        The analysis parameters that have been specified in the analysis template.

        • (dict) --

          Optional. The member who can query can provide this placeholder for a literal data value in an analysis template.

          • name (string) --

            The name of the parameter. The name must use only alphanumeric, underscore (_), or hyphen (-) characters but cannot start or end with a hyphen.

          • type (string) --

            The type of parameter.

          • defaultValue (string) --

            Optional. The default value that is applied in the analysis template. The member who can query can override this value in the query editor.

ListAnalysisTemplates (new) Link ¶

Lists analysis templates that the caller owns.

See also: AWS API Documentation

Request Syntax

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

string

param membershipIdentifier

[REQUIRED]

The identifier for a membership resource.

type nextToken

string

param nextToken

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

type maxResults

integer

param maxResults

The maximum size of the results that is returned per call.

rtype

dict

returns

Response Syntax

{
    'nextToken': 'string',
    'analysisTemplateSummaries': [
        {
            'arn': 'string',
            'createTime': datetime(2015, 1, 1),
            'id': 'string',
            'name': 'string',
            'updateTime': datetime(2015, 1, 1),
            'membershipArn': 'string',
            'membershipId': 'string',
            'collaborationArn': 'string',
            'collaborationId': 'string',
            'description': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • nextToken (string) --

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

    • analysisTemplateSummaries (list) --

      Lists analysis template metadata.

      • (dict) --

        The metadata of the analysis template.

        • arn (string) --

          The Amazon Resource Name (ARN) of the analysis template.

        • createTime (datetime) --

          The time that the analysis template summary was created.

        • id (string) --

          The identifier of the analysis template.

        • name (string) --

          The name of the analysis template.

        • updateTime (datetime) --

          The time that the analysis template summary was last updated.

        • membershipArn (string) --

          The Amazon Resource Name (ARN) of the member who created the analysis template.

        • membershipId (string) --

          The identifier for a membership resource.

        • collaborationArn (string) --

          The unique ARN for the analysis template summary’s associated collaboration.

        • collaborationId (string) --

          A unique identifier for the collaboration that the analysis template summary belongs to. Currently accepts collaboration ID.

        • description (string) --

          The description of the analysis template.

DeleteAnalysisTemplate (new) Link ¶

Deletes an analysis template.

See also: AWS API Documentation

Request Syntax

client.delete_analysis_template(
    membershipIdentifier='string',
    analysisTemplateIdentifier='string'
)
type membershipIdentifier

string

param membershipIdentifier

[REQUIRED]

The identifier for a membership resource.

type analysisTemplateIdentifier

string

param analysisTemplateIdentifier

[REQUIRED]

The identifier for the analysis template resource.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

ListCollaborationAnalysisTemplates (new) Link ¶

Lists analysis templates within a collaboration.

See also: AWS API Documentation

Request Syntax

client.list_collaboration_analysis_templates(
    collaborationIdentifier='string',
    nextToken='string',
    maxResults=123
)
type collaborationIdentifier

string

param collaborationIdentifier

[REQUIRED]

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

type nextToken

string

param nextToken

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

type maxResults

integer

param maxResults

The maximum size of the results that is returned per call.

rtype

dict

returns

Response Syntax

{
    'nextToken': 'string',
    'collaborationAnalysisTemplateSummaries': [
        {
            'arn': 'string',
            'createTime': datetime(2015, 1, 1),
            'id': 'string',
            'name': 'string',
            'updateTime': datetime(2015, 1, 1),
            'collaborationArn': 'string',
            'collaborationId': 'string',
            'creatorAccountId': 'string',
            'description': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • nextToken (string) --

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

    • collaborationAnalysisTemplateSummaries (list) --

      The metadata of the analysis template within a collaboration.

      • (dict) --

        The metadata of the analysis template within a collaboration.

        • arn (string) --

          The Amazon Resource Name (ARN) of the analysis template.

        • createTime (datetime) --

          The time that the summary of the analysis template in a collaboration was created.

        • id (string) --

          The identifier of the analysis template.

        • name (string) --

          The name of the analysis template.

        • updateTime (datetime) --

          The time that the summary of the analysis template in the collaboration was last updated.

        • collaborationArn (string) --

          The unique ARN for the analysis template’s associated collaboration.

        • collaborationId (string) --

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

        • creatorAccountId (string) --

          The identifier used to reference members of the collaboration. Currently only supports Amazon Web Services account ID.

        • description (string) --

          The description of the analysis template.

UpdateAnalysisTemplate (new) Link ¶

Updates the analysis template metadata.

See also: AWS API Documentation

Request Syntax

client.update_analysis_template(
    membershipIdentifier='string',
    analysisTemplateIdentifier='string',
    description='string'
)
type membershipIdentifier

string

param membershipIdentifier

[REQUIRED]

The identifier for a membership resource.

type analysisTemplateIdentifier

string

param analysisTemplateIdentifier

[REQUIRED]

The identifier for the analysis template resource.

type description

string

param description

A new description for the analysis template.

rtype

dict

returns

Response Syntax

{
    'analysisTemplate': {
        'id': 'string',
        'arn': 'string',
        'collaborationId': 'string',
        'collaborationArn': 'string',
        'membershipId': 'string',
        'membershipArn': 'string',
        'description': 'string',
        'name': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'schema': {
            'referencedTables': [
                'string',
            ]
        },
        'format': 'SQL',
        'source': {
            'text': 'string'
        },
        'analysisParameters': [
            {
                'name': 'string',
                'type': 'SMALLINT'|'INTEGER'|'BIGINT'|'DECIMAL'|'REAL'|'DOUBLE_PRECISION'|'BOOLEAN'|'CHAR'|'VARCHAR'|'DATE'|'TIMESTAMP'|'TIMESTAMPTZ'|'TIME'|'TIMETZ'|'VARBYTE',
                'defaultValue': 'string'
            },
        ]
    }
}

Response Structure

  • (dict) --

    • analysisTemplate (dict) --

      The analysis template.

      • id (string) --

        The identifier for the analysis template.

      • arn (string) --

        The Amazon Resource Name (ARN) of the analysis template.

      • collaborationId (string) --

        The unique ID for the associated collaboration of the analysis template.

      • collaborationArn (string) --

        The unique ARN for the analysis template’s associated collaboration.

      • membershipId (string) --

        The identifier of a member who created the analysis template.

      • membershipArn (string) --

        The Amazon Resource Name (ARN) of the member who created the analysis template.

      • description (string) --

        The description of the analysis template.

      • name (string) --

        The name of the analysis template.

      • createTime (datetime) --

        The time that the analysis template was created.

      • updateTime (datetime) --

        The time that the analysis template was last updated.

      • schema (dict) --

        The entire schema object.

        • referencedTables (list) --

          The tables referenced in the analysis schema.

          • (string) --

      • format (string) --

        The format of the analysis template.

      • source (dict) --

        The source of the analysis template.

        Note

        This is a Tagged Union structure. Only one of the following top level keys will be set: text. 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'}
        • text (string) --

          The query text.

      • analysisParameters (list) --

        The parameters of the analysis template.

        • (dict) --

          Optional. The member who can query can provide this placeholder for a literal data value in an analysis template.

          • name (string) --

            The name of the parameter. The name must use only alphanumeric, underscore (_), or hyphen (-) characters but cannot start or end with a hyphen.

          • type (string) --

            The type of parameter.

          • defaultValue (string) --

            Optional. The default value that is applied in the analysis template. The member who can query can override this value in the query editor.

CreateAnalysisTemplate (new) Link ¶

Creates a new analysis template.

See also: AWS API Documentation

Request Syntax

client.create_analysis_template(
    description='string',
    membershipIdentifier='string',
    name='string',
    format='SQL',
    source={
        'text': 'string'
    },
    tags={
        'string': 'string'
    },
    analysisParameters=[
        {
            'name': 'string',
            'type': 'SMALLINT'|'INTEGER'|'BIGINT'|'DECIMAL'|'REAL'|'DOUBLE_PRECISION'|'BOOLEAN'|'CHAR'|'VARCHAR'|'DATE'|'TIMESTAMP'|'TIMESTAMPTZ'|'TIME'|'TIMETZ'|'VARBYTE',
            'defaultValue': 'string'
        },
    ]
)
type description

string

param description

The description of the analysis template.

type membershipIdentifier

string

param membershipIdentifier

[REQUIRED]

The identifier for a membership resource.

type name

string

param name

[REQUIRED]

The name of the analysis template.

type format

string

param format

[REQUIRED]

The format of the analysis template.

type source

dict

param source

[REQUIRED]

The information in the analysis template. Currently supports text , the query text for the analysis template.

Note

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

  • text (string) --

    The query text.

type tags

dict

param tags

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

  • (string) --

    • (string) --

type analysisParameters

list

param analysisParameters

The parameters of the analysis template.

  • (dict) --

    Optional. The member who can query can provide this placeholder for a literal data value in an analysis template.

    • name (string) -- [REQUIRED]

      The name of the parameter. The name must use only alphanumeric, underscore (_), or hyphen (-) characters but cannot start or end with a hyphen.

    • type (string) -- [REQUIRED]

      The type of parameter.

    • defaultValue (string) --

      Optional. The default value that is applied in the analysis template. The member who can query can override this value in the query editor.

rtype

dict

returns

Response Syntax

{
    'analysisTemplate': {
        'id': 'string',
        'arn': 'string',
        'collaborationId': 'string',
        'collaborationArn': 'string',
        'membershipId': 'string',
        'membershipArn': 'string',
        'description': 'string',
        'name': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'schema': {
            'referencedTables': [
                'string',
            ]
        },
        'format': 'SQL',
        'source': {
            'text': 'string'
        },
        'analysisParameters': [
            {
                'name': 'string',
                'type': 'SMALLINT'|'INTEGER'|'BIGINT'|'DECIMAL'|'REAL'|'DOUBLE_PRECISION'|'BOOLEAN'|'CHAR'|'VARCHAR'|'DATE'|'TIMESTAMP'|'TIMESTAMPTZ'|'TIME'|'TIMETZ'|'VARBYTE',
                'defaultValue': 'string'
            },
        ]
    }
}

Response Structure

  • (dict) --

    • analysisTemplate (dict) --

      The analysis template.

      • id (string) --

        The identifier for the analysis template.

      • arn (string) --

        The Amazon Resource Name (ARN) of the analysis template.

      • collaborationId (string) --

        The unique ID for the associated collaboration of the analysis template.

      • collaborationArn (string) --

        The unique ARN for the analysis template’s associated collaboration.

      • membershipId (string) --

        The identifier of a member who created the analysis template.

      • membershipArn (string) --

        The Amazon Resource Name (ARN) of the member who created the analysis template.

      • description (string) --

        The description of the analysis template.

      • name (string) --

        The name of the analysis template.

      • createTime (datetime) --

        The time that the analysis template was created.

      • updateTime (datetime) --

        The time that the analysis template was last updated.

      • schema (dict) --

        The entire schema object.

        • referencedTables (list) --

          The tables referenced in the analysis schema.

          • (string) --

      • format (string) --

        The format of the analysis template.

      • source (dict) --

        The source of the analysis template.

        Note

        This is a Tagged Union structure. Only one of the following top level keys will be set: text. 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'}
        • text (string) --

          The query text.

      • analysisParameters (list) --

        The parameters of the analysis template.

        • (dict) --

          Optional. The member who can query can provide this placeholder for a literal data value in an analysis template.

          • name (string) --

            The name of the parameter. The name must use only alphanumeric, underscore (_), or hyphen (-) characters but cannot start or end with a hyphen.

          • type (string) --

            The type of parameter.

          • defaultValue (string) --

            Optional. The default value that is applied in the analysis template. The member who can query can override this value in the query editor.

BatchGetSchema (updated) Link ¶
Changes (response)
{'schemas': {'analysisRuleTypes': {'CUSTOM'}}}

Retrieves multiple schemas by their identifiers.

See also: AWS API Documentation

Request Syntax

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

string

param collaborationIdentifier

[REQUIRED]

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

type names

list

param names

[REQUIRED]

The names for the schema objects to retrieve.>

  • (string) --

rtype

dict

returns

Response Syntax

{
    'schemas': [
        {
            'columns': [
                {
                    'name': 'string',
                    'type': 'string'
                },
            ],
            'partitionKeys': [
                {
                    'name': 'string',
                    'type': 'string'
                },
            ],
            'analysisRuleTypes': [
                'AGGREGATION'|'LIST'|'CUSTOM',
            ],
            '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 Glue table.

            • name (string) --

              The name of the column.

            • type (string) --

              The type of the column.

        • partitionKeys (list) --

          The partition keys for the dataset underlying this schema.

          • (dict) --

            A column within a schema relation, derived from the underlying 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. 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 Amazon Web Services account that owns the schema.

        • name (string) --

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

        • collaborationId (string) --

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

        • collaborationArn (string) --

          The unique 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.

CreateConfiguredTable (updated) Link ¶
Changes (response)
{'configuredTable': {'analysisRuleTypes': {'CUSTOM'}}}

Creates a new configured table resource.

See also: AWS API Documentation

Request Syntax

client.create_configured_table(
    name='string',
    description='string',
    tableReference={
        'glue': {
            'tableName': 'string',
            'databaseName': 'string'
        }
    },
    allowedColumns=[
        'string',
    ],
    analysisMethod='DIRECT_QUERY',
    tags={
        'string': 'string'
    }
)
type name

string

param name

[REQUIRED]

The name of the configured table.

type description

string

param description

A description for the configured table.

type tableReference

dict

param tableReference

[REQUIRED]

A reference to the 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 Glue table referred to by this table reference.

    • tableName (string) -- [REQUIRED]

      The name of the Glue table.

    • databaseName (string) -- [REQUIRED]

      The name of the database the Glue table belongs to.

type allowedColumns

list

param allowedColumns

[REQUIRED]

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

  • (string) --

type analysisMethod

string

param analysisMethod

[REQUIRED]

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

type tags

dict

param tags

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

  • (string) --

    • (string) --

rtype

dict

returns

Response Syntax

{
    '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'|'CUSTOM',
        ],
        '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 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 Glue table referred to by this table reference.

          • tableName (string) --

            The name of the Glue table.

          • databaseName (string) --

            The name of the database the 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. 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 Glue table that can be utilized within collaborations.

        • (string) --

CreateConfiguredTableAnalysisRule (updated) Link ¶
Changes (request, response)
Request
{'analysisRulePolicy': {'v1': {'custom': {'allowedAnalyses': ['string'],
                                          'allowedAnalysisProviders': ['string']}}},
 'analysisRuleType': {'CUSTOM'}}
Response
{'analysisRule': {'policy': {'v1': {'custom': {'allowedAnalyses': ['string'],
                                               'allowedAnalysisProviders': ['string']}}},
                  'type': {'CUSTOM'}}}

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

See also: AWS API Documentation

Request Syntax

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

string

param configuredTableIdentifier

[REQUIRED]

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

type analysisRuleType

string

param analysisRuleType

[REQUIRED]

The type of analysis rule.

type analysisRulePolicy

dict

param analysisRulePolicy

[REQUIRED]

The 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, custom.

    • list (dict) --

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

      • joinColumns (list) -- [REQUIRED]

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

        • (string) --

      • allowedJoinOperators (list) --

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

        • (string) --

      • listColumns (list) -- [REQUIRED]

        Columns that can be listed in the output.

        • (string) --

    • aggregation (dict) --

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

      • aggregateColumns (list) -- [REQUIRED]

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

        • (dict) --

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

          • columnNames (list) -- [REQUIRED]

            Column names in configured table of aggregate columns.

            • (string) --

          • function (string) -- [REQUIRED]

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

      • joinColumns (list) -- [REQUIRED]

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

        • (string) --

      • joinRequired (string) --

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

      • allowedJoinOperators (list) --

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

        • (string) --

      • dimensionColumns (list) -- [REQUIRED]

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

        • (string) --

      • scalarFunctions (list) -- [REQUIRED]

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

        • (string) --

      • outputConstraints (list) -- [REQUIRED]

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

        • (dict) --

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

          • columnName (string) -- [REQUIRED]

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

          • minimum (integer) -- [REQUIRED]

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

          • type (string) -- [REQUIRED]

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

    • custom (dict) --

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

      • allowedAnalyses (list) -- [REQUIRED]

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

        • (string) --

      • allowedAnalysisProviders (list) --

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

        • (string) --

rtype

dict

returns

Response Syntax

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

              • (string) --

            • allowedJoinOperators (list) --

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

              • (string) --

            • listColumns (list) --

              Columns that can be listed in the output.

              • (string) --

          • aggregation (dict) --

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

            • aggregateColumns (list) --

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

              • (dict) --

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

                • columnNames (list) --

                  Column names in configured table of aggregate columns.

                  • (string) --

                • function (string) --

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

            • joinColumns (list) --

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

              • (string) --

            • joinRequired (string) --

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

            • allowedJoinOperators (list) --

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

              • (string) --

            • dimensionColumns (list) --

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

              • (string) --

            • scalarFunctions (list) --

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

              • (string) --

            • outputConstraints (list) --

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

              • (dict) --

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

                • columnName (string) --

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

                • minimum (integer) --

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

                • type (string) --

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

          • custom (dict) --

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

            • allowedAnalyses (list) --

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

              • (string) --

            • allowedAnalysisProviders (list) --

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

              • (string) --

      • type (string) --

        The type of configured table analysis rule.

      • createTime (datetime) --

        The time the configured table analysis rule was created.

      • updateTime (datetime) --

        The time the configured table analysis rule was last updated.

DeleteConfiguredTableAnalysisRule (updated) Link ¶
Changes (request)
{'analysisRuleType': {'CUSTOM'}}

Deletes a configured table analysis rule.

See also: AWS API Documentation

Request Syntax

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

string

param configuredTableIdentifier

[REQUIRED]

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

type analysisRuleType

string

param analysisRuleType

[REQUIRED]

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

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

    An empty response that indicates a successful delete.

GetConfiguredTable (updated) Link ¶
Changes (response)
{'configuredTable': {'analysisRuleTypes': {'CUSTOM'}}}

Retrieves a configured table.

See also: AWS API Documentation

Request Syntax

client.get_configured_table(
    configuredTableIdentifier='string'
)
type configuredTableIdentifier

string

param configuredTableIdentifier

[REQUIRED]

The unique ID for the configured table to retrieve.

rtype

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'|'CUSTOM',
        ],
        '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 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 Glue table referred to by this table reference.

          • tableName (string) --

            The name of the Glue table.

          • databaseName (string) --

            The name of the database the 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. 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 Glue table that can be utilized within collaborations.

        • (string) --

GetConfiguredTableAnalysisRule (updated) Link ¶
Changes (request, response)
Request
{'analysisRuleType': {'CUSTOM'}}
Response
{'analysisRule': {'policy': {'v1': {'custom': {'allowedAnalyses': ['string'],
                                               'allowedAnalysisProviders': ['string']}}},
                  'type': {'CUSTOM'}}}

Retrieves a configured table analysis rule.

See also: AWS API Documentation

Request Syntax

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

string

param configuredTableIdentifier

[REQUIRED]

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

type analysisRuleType

string

param analysisRuleType

[REQUIRED]

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

rtype

dict

returns

Response Syntax

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

Response Structure

  • (dict) --

    • analysisRule (dict) --

      The entire analysis rule output.

      • configuredTableId (string) --

        The unique ID for the configured table.

      • configuredTableArn (string) --

        The unique ARN for the configured table.

      • policy (dict) --

        The policy that controls SQL query rules.

        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, custom. 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 other members' configured tables.

              • (string) --

            • allowedJoinOperators (list) --

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

              • (string) --

            • listColumns (list) --

              Columns that can be listed in the output.

              • (string) --

          • aggregation (dict) --

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

            • aggregateColumns (list) --

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

              • (dict) --

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

                • columnNames (list) --

                  Column names in configured table of aggregate columns.

                  • (string) --

                • function (string) --

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

            • joinColumns (list) --

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

              • (string) --

            • joinRequired (string) --

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

            • allowedJoinOperators (list) --

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

              • (string) --

            • dimensionColumns (list) --

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

              • (string) --

            • scalarFunctions (list) --

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

              • (string) --

            • outputConstraints (list) --

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

              • (dict) --

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

                • columnName (string) --

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

                • minimum (integer) --

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

                • type (string) --

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

          • custom (dict) --

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

            • allowedAnalyses (list) --

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

              • (string) --

            • allowedAnalysisProviders (list) --

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

              • (string) --

      • type (string) --

        The type of configured table analysis rule.

      • createTime (datetime) --

        The time the configured table analysis rule was created.

      • updateTime (datetime) --

        The time the configured table analysis rule was last updated.

GetProtectedQuery (updated) Link ¶
Changes (response)
{'protectedQuery': {'sqlParameters': {'analysisTemplateArn': 'string',
                                      'parameters': {'string': 'string'}}}}

Returns query processing metadata.

See also: AWS API Documentation

Request Syntax

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

string

param membershipIdentifier

[REQUIRED]

The identifier for a membership in a protected query instance.

type protectedQueryIdentifier

string

param protectedQueryIdentifier

[REQUIRED]

The identifier for a protected query instance.

rtype

dict

returns

Response Syntax

{
    'protectedQuery': {
        'id': 'string',
        'membershipId': 'string',
        'membershipArn': 'string',
        'createTime': datetime(2015, 1, 1),
        'sqlParameters': {
            'queryString': 'string',
            'analysisTemplateArn': 'string',
            'parameters': {
                'string': 'string'
            }
        },
        'status': 'SUBMITTED'|'STARTED'|'CANCELLED'|'CANCELLING'|'FAILED'|'SUCCESS'|'TIMED_OUT',
        'resultConfiguration': {
            'outputConfiguration': {
                's3': {
                    'resultFormat': 'CSV'|'PARQUET',
                    'bucket': 'string',
                    'keyPrefix': 'string'
                }
            }
        },
        '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.

        • analysisTemplateArn (string) --

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

        • parameters (dict) --

          The protected query SQL parameters.

          • (string) --

            • (string) --

      • status (string) --

        The status of the query.

      • resultConfiguration (dict) --

        Contains any details needed to write the query results.

        • outputConfiguration (dict) --

          Configuration for protected query results.

          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.

GetSchema (updated) Link ¶
Changes (response)
{'schema': {'analysisRuleTypes': {'CUSTOM'}}}

Retrieves the schema for a relation within a collaboration.

See also: AWS API Documentation

Request Syntax

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

string

param collaborationIdentifier

[REQUIRED]

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

type name

string

param name

[REQUIRED]

The name of the relation to retrieve the schema for.

rtype

dict

returns

Response Syntax

{
    'schema': {
        'columns': [
            {
                'name': 'string',
                'type': 'string'
            },
        ],
        'partitionKeys': [
            {
                'name': 'string',
                'type': 'string'
            },
        ],
        'analysisRuleTypes': [
            'AGGREGATION'|'LIST'|'CUSTOM',
        ],
        '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 Glue table.

          • name (string) --

            The name of the column.

          • type (string) --

            The type of the column.

      • partitionKeys (list) --

        The partition keys for the dataset underlying this schema.

        • (dict) --

          A column within a schema relation, derived from the underlying 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. 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 Amazon Web Services account that owns the schema.

      • name (string) --

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

      • collaborationId (string) --

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

      • collaborationArn (string) --

        The unique 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.

GetSchemaAnalysisRule (updated) Link ¶
Changes (request, response)
Request
{'type': {'CUSTOM'}}
Response
{'analysisRule': {'policy': {'v1': {'custom': {'allowedAnalyses': ['string'],
                                               'allowedAnalysisProviders': ['string']}}},
                  'type': {'CUSTOM'}}}

Retrieves a schema analysis rule.

See also: AWS API Documentation

Request Syntax

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

string

param collaborationIdentifier

[REQUIRED]

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

type name

string

param name

[REQUIRED]

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

type type

string

param type

[REQUIRED]

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

rtype

dict

returns

Response Syntax

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

Response Structure

  • (dict) --

    • analysisRule (dict) --

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

      • collaborationId (string) --

        The unique ID for the associated collaboration.

      • type (string) --

        The type of analysis rule.

      • name (string) --

        The name for the analysis rule.

      • createTime (datetime) --

        The time the analysis rule was created.

      • updateTime (datetime) --

        The time the analysis rule was last updated.

      • policy (dict) --

        A policy that describes the associated data usage limitations.

        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, custom. 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 other members' configured tables.

              • (string) --

            • allowedJoinOperators (list) --

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

              • (string) --

            • listColumns (list) --

              Columns that can be listed in the output.

              • (string) --

          • aggregation (dict) --

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

            • aggregateColumns (list) --

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

              • (dict) --

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

                • columnNames (list) --

                  Column names in configured table of aggregate columns.

                  • (string) --

                • function (string) --

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

            • joinColumns (list) --

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

              • (string) --

            • joinRequired (string) --

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

            • allowedJoinOperators (list) --

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

              • (string) --

            • dimensionColumns (list) --

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

              • (string) --

            • scalarFunctions (list) --

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

              • (string) --

            • outputConstraints (list) --

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

              • (dict) --

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

                • columnName (string) --

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

                • minimum (integer) --

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

                • type (string) --

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

          • custom (dict) --

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

            • allowedAnalyses (list) --

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

              • (string) --

            • allowedAnalysisProviders (list) --

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

              • (string) --

ListConfiguredTables (updated) Link ¶
Changes (response)
{'configuredTableSummaries': {'analysisRuleTypes': {'CUSTOM'}}}

Lists configured tables.

See also: AWS API Documentation

Request Syntax

client.list_configured_tables(
    nextToken='string',
    maxResults=123
)
type nextToken

string

param nextToken

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

type maxResults

integer

param maxResults

The maximum size of the results that is returned per call.

rtype

dict

returns

Response Syntax

{
    'configuredTableSummaries': [
        {
            'id': 'string',
            'arn': 'string',
            'name': 'string',
            'createTime': datetime(2015, 1, 1),
            'updateTime': datetime(2015, 1, 1),
            'analysisRuleTypes': [
                'AGGREGATION'|'LIST'|'CUSTOM',
            ],
            '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.

ListSchemas (updated) Link ¶
Changes (response)
{'schemaSummaries': {'analysisRuleTypes': {'CUSTOM'}}}

Lists the schemas for relations within a collaboration.

See also: AWS API Documentation

Request Syntax

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

string

param collaborationIdentifier

[REQUIRED]

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

type schemaType

string

param schemaType

If present, filter schemas by schema type. The only valid schema type is currently TABLE.

type nextToken

string

param nextToken

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

type maxResults

integer

param maxResults

The maximum size of the results that is returned per call.

rtype

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'|'CUSTOM',
            ],
            '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 Amazon Web Services account that owns the schema.

        • createTime (datetime) --

          The time the schema object was created.

        • updateTime (datetime) --

          The time the schema object was last updated.

        • collaborationId (string) --

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

        • collaborationArn (string) --

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

        • analysisRuleTypes (list) --

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

          • (string) --

        • analysisMethod (string) --

          The analysis method for the associated schema. 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.

StartProtectedQuery (updated) Link ¶
Changes (request, response)
Request
{'sqlParameters': {'analysisTemplateArn': 'string',
                   'parameters': {'string': 'string'}}}
Response
{'protectedQuery': {'sqlParameters': {'analysisTemplateArn': 'string',
                                      'parameters': {'string': 'string'}}}}

Creates a protected query that is started by Clean Rooms .

See also: AWS API Documentation

Request Syntax

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

string

param type

[REQUIRED]

The type of the protected query to be started.

type membershipIdentifier

string

param membershipIdentifier

[REQUIRED]

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

type sqlParameters

dict

param sqlParameters

[REQUIRED]

The protected SQL query parameters.

  • queryString (string) --

    The query string to be submitted.

  • analysisTemplateArn (string) --

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

  • parameters (dict) --

    The protected query SQL parameters.

    • (string) --

      • (string) --

type resultConfiguration

dict

param resultConfiguration

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

rtype

dict

returns

Response Syntax

{
    'protectedQuery': {
        'id': 'string',
        'membershipId': 'string',
        'membershipArn': 'string',
        'createTime': datetime(2015, 1, 1),
        'sqlParameters': {
            'queryString': 'string',
            'analysisTemplateArn': 'string',
            'parameters': {
                'string': 'string'
            }
        },
        'status': 'SUBMITTED'|'STARTED'|'CANCELLED'|'CANCELLING'|'FAILED'|'SUCCESS'|'TIMED_OUT',
        'resultConfiguration': {
            'outputConfiguration': {
                's3': {
                    'resultFormat': 'CSV'|'PARQUET',
                    'bucket': 'string',
                    'keyPrefix': 'string'
                }
            }
        },
        '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.

        • analysisTemplateArn (string) --

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

        • parameters (dict) --

          The protected query SQL parameters.

          • (string) --

            • (string) --

      • status (string) --

        The status of the query.

      • resultConfiguration (dict) --

        Contains any details needed to write the query results.

        • outputConfiguration (dict) --

          Configuration for protected query results.

          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.

UpdateConfiguredTable (updated) Link ¶
Changes (response)
{'configuredTable': {'analysisRuleTypes': {'CUSTOM'}}}

Updates a configured table.

See also: AWS API Documentation

Request Syntax

client.update_configured_table(
    configuredTableIdentifier='string',
    name='string',
    description='string'
)
type configuredTableIdentifier

string

param configuredTableIdentifier

[REQUIRED]

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

type name

string

param name

A new name for the configured table.

type description

string

param description

A new description for the configured table.

rtype

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'|'CUSTOM',
        ],
        '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 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 Glue table referred to by this table reference.

          • tableName (string) --

            The name of the Glue table.

          • databaseName (string) --

            The name of the database the 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. 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 Glue table that can be utilized within collaborations.

        • (string) --

UpdateConfiguredTableAnalysisRule (updated) Link ¶
Changes (request, response)
Request
{'analysisRulePolicy': {'v1': {'custom': {'allowedAnalyses': ['string'],
                                          'allowedAnalysisProviders': ['string']}}},
 'analysisRuleType': {'CUSTOM'}}
Response
{'analysisRule': {'policy': {'v1': {'custom': {'allowedAnalyses': ['string'],
                                               'allowedAnalysisProviders': ['string']}}},
                  'type': {'CUSTOM'}}}

Updates a configured table analysis rule.

See also: AWS API Documentation

Request Syntax

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

string

param configuredTableIdentifier

[REQUIRED]

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

type analysisRuleType

string

param analysisRuleType

[REQUIRED]

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

type analysisRulePolicy

dict

param analysisRulePolicy

[REQUIRED]

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

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, custom.

    • list (dict) --

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

      • joinColumns (list) -- [REQUIRED]

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

        • (string) --

      • allowedJoinOperators (list) --

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

        • (string) --

      • listColumns (list) -- [REQUIRED]

        Columns that can be listed in the output.

        • (string) --

    • aggregation (dict) --

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

      • aggregateColumns (list) -- [REQUIRED]

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

        • (dict) --

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

          • columnNames (list) -- [REQUIRED]

            Column names in configured table of aggregate columns.

            • (string) --

          • function (string) -- [REQUIRED]

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

      • joinColumns (list) -- [REQUIRED]

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

        • (string) --

      • joinRequired (string) --

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

      • allowedJoinOperators (list) --

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

        • (string) --

      • dimensionColumns (list) -- [REQUIRED]

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

        • (string) --

      • scalarFunctions (list) -- [REQUIRED]

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

        • (string) --

      • outputConstraints (list) -- [REQUIRED]

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

        • (dict) --

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

          • columnName (string) -- [REQUIRED]

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

          • minimum (integer) -- [REQUIRED]

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

          • type (string) -- [REQUIRED]

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

    • custom (dict) --

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

      • allowedAnalyses (list) -- [REQUIRED]

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

        • (string) --

      • allowedAnalysisProviders (list) --

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

        • (string) --

rtype

dict

returns

Response Syntax

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

Response Structure

  • (dict) --

    • analysisRule (dict) --

      The entire updated analysis rule.

      • configuredTableId (string) --

        The unique ID for the configured table.

      • configuredTableArn (string) --

        The unique ARN for the configured table.

      • policy (dict) --

        The policy that controls SQL query rules.

        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, custom. 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 other members' configured tables.

              • (string) --

            • allowedJoinOperators (list) --

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

              • (string) --

            • listColumns (list) --

              Columns that can be listed in the output.

              • (string) --

          • aggregation (dict) --

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

            • aggregateColumns (list) --

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

              • (dict) --

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

                • columnNames (list) --

                  Column names in configured table of aggregate columns.

                  • (string) --

                • function (string) --

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

            • joinColumns (list) --

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

              • (string) --

            • joinRequired (string) --

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

            • allowedJoinOperators (list) --

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

              • (string) --

            • dimensionColumns (list) --

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

              • (string) --

            • scalarFunctions (list) --

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

              • (string) --

            • outputConstraints (list) --

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

              • (dict) --

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

                • columnName (string) --

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

                • minimum (integer) --

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

                • type (string) --

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

          • custom (dict) --

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

            • allowedAnalyses (list) --

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

              • (string) --

            • allowedAnalysisProviders (list) --

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

              • (string) --

      • type (string) --

        The type of configured table analysis rule.

      • createTime (datetime) --

        The time the configured table analysis rule was created.

      • updateTime (datetime) --

        The time the configured table analysis rule was last updated.

UpdateProtectedQuery (updated) Link ¶
Changes (response)
{'protectedQuery': {'sqlParameters': {'analysisTemplateArn': 'string',
                                      'parameters': {'string': 'string'}}}}

Updates the processing of a currently running query.

See also: AWS API Documentation

Request Syntax

client.update_protected_query(
    membershipIdentifier='string',
    protectedQueryIdentifier='string',
    targetStatus='CANCELLED'
)
type membershipIdentifier

string

param membershipIdentifier

[REQUIRED]

The identifier for a member of a protected query instance.

type protectedQueryIdentifier

string

param protectedQueryIdentifier

[REQUIRED]

The identifier for a protected query instance.

type targetStatus

string

param targetStatus

[REQUIRED]

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

rtype

dict

returns

Response Syntax

{
    'protectedQuery': {
        'id': 'string',
        'membershipId': 'string',
        'membershipArn': 'string',
        'createTime': datetime(2015, 1, 1),
        'sqlParameters': {
            'queryString': 'string',
            'analysisTemplateArn': 'string',
            'parameters': {
                'string': 'string'
            }
        },
        'status': 'SUBMITTED'|'STARTED'|'CANCELLED'|'CANCELLING'|'FAILED'|'SUCCESS'|'TIMED_OUT',
        'resultConfiguration': {
            'outputConfiguration': {
                's3': {
                    'resultFormat': 'CSV'|'PARQUET',
                    'bucket': 'string',
                    'keyPrefix': 'string'
                }
            }
        },
        '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.

        • analysisTemplateArn (string) --

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

        • parameters (dict) --

          The protected query SQL parameters.

          • (string) --

            • (string) --

      • status (string) --

        The status of the query.

      • resultConfiguration (dict) --

        Contains any details needed to write the query results.

        • outputConfiguration (dict) --

          Configuration for protected query results.

          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.