AWS Clean Rooms Service

2023/11/14 - AWS Clean Rooms Service - 6 updated api methods

Changes  This feature provides the ability for the collaboration creator to configure either the member who can run queries or a different member in the collaboration to be billed for query compute costs.

CreateCollaboration (updated) Link ¶
Changes (request)
{'creatorPaymentConfiguration': {'queryCompute': {'isResponsible': 'boolean'}},
 'members': {'paymentConfiguration': {'queryCompute': {'isResponsible': 'boolean'}}}}

Creates a new collaboration.

See also: AWS API Documentation

Request Syntax

client.create_collaboration(
    members=[
        {
            'accountId': 'string',
            'memberAbilities': [
                'CAN_QUERY'|'CAN_RECEIVE_RESULTS',
            ],
            'displayName': 'string',
            'paymentConfiguration': {
                'queryCompute': {
                    'isResponsible': True|False
                }
            }
        },
    ],
    name='string',
    description='string',
    creatorMemberAbilities=[
        'CAN_QUERY'|'CAN_RECEIVE_RESULTS',
    ],
    creatorDisplayName='string',
    dataEncryptionMetadata={
        'allowCleartext': True|False,
        'allowDuplicates': True|False,
        'allowJoinsOnColumnsWithDifferentNames': True|False,
        'preserveNulls': True|False
    },
    queryLogStatus='ENABLED'|'DISABLED',
    tags={
        'string': 'string'
    },
    creatorPaymentConfiguration={
        'queryCompute': {
            'isResponsible': True|False
        }
    }
)
type members

list

param members

[REQUIRED]

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

  • (dict) --

    Basic metadata used to construct a new member.

    • accountId (string) -- [REQUIRED]

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

    • memberAbilities (list) -- [REQUIRED]

      The abilities granted to the collaboration member.

      • (string) --

    • displayName (string) -- [REQUIRED]

      The member's display name.

    • paymentConfiguration (dict) --

      The collaboration member's payment responsibilities set by the collaboration creator.

      If the collaboration creator hasn't specified anyone as the member paying for query compute costs, then the member who can query is the default payer.

      • queryCompute (dict) -- [REQUIRED]

        The collaboration member's payment responsibilities set by the collaboration creator for query compute costs.

        • isResponsible (boolean) -- [REQUIRED]

          Indicates whether the collaboration creator has configured the collaboration member to pay for query compute costs ( TRUE ) or has not configured the collaboration member to pay for query compute costs ( FALSE ).

          Exactly one member can be configured to pay for query compute costs. An error is returned if the collaboration creator sets a TRUE value for more than one member in the collaboration.

          If the collaboration creator hasn't specified anyone as the member paying for query compute costs, then the member who can query is the default payer. An error is returned if the collaboration creator sets a FALSE value for the member who can query.

type name

string

param name

[REQUIRED]

The display name for a collaboration.

type description

string

param description

[REQUIRED]

A description of the collaboration provided by the collaboration owner.

type creatorMemberAbilities

list

param creatorMemberAbilities

[REQUIRED]

The abilities granted to the collaboration creator.

  • (string) --

type creatorDisplayName

string

param creatorDisplayName

[REQUIRED]

The display name of the collaboration creator.

type dataEncryptionMetadata

dict

param dataEncryptionMetadata

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

  • allowCleartext (boolean) -- [REQUIRED]

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

  • allowDuplicates (boolean) -- [REQUIRED]

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

  • allowJoinsOnColumnsWithDifferentNames (boolean) -- [REQUIRED]

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

  • preserveNulls (boolean) -- [REQUIRED]

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

type queryLogStatus

string

param queryLogStatus

[REQUIRED]

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

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 creatorPaymentConfiguration

dict

param creatorPaymentConfiguration

The collaboration creator's payment responsibilities set by the collaboration creator.

If the collaboration creator hasn't specified anyone as the member paying for query compute costs, then the member who can query is the default payer.

  • queryCompute (dict) -- [REQUIRED]

    The collaboration member's payment responsibilities set by the collaboration creator for query compute costs.

    • isResponsible (boolean) -- [REQUIRED]

      Indicates whether the collaboration creator has configured the collaboration member to pay for query compute costs ( TRUE ) or has not configured the collaboration member to pay for query compute costs ( FALSE ).

      Exactly one member can be configured to pay for query compute costs. An error is returned if the collaboration creator sets a TRUE value for more than one member in the collaboration.

      If the collaboration creator hasn't specified anyone as the member paying for query compute costs, then the member who can query is the default payer. An error is returned if the collaboration creator sets a FALSE value for the member who can query.

rtype

dict

returns

Response Syntax

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

Response Structure

  • (dict) --

    • collaboration (dict) --

      The entire created collaboration object.

      • id (string) --

        The unique ID for the collaboration.

      • arn (string) --

        The unique ARN for the collaboration.

      • name (string) --

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

      • description (string) --

        A description of the collaboration provided by the collaboration owner.

      • creatorAccountId (string) --

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

      • creatorDisplayName (string) --

        A display name of the collaboration creator.

      • createTime (datetime) --

        The time when the collaboration was created.

      • updateTime (datetime) --

        The time the collaboration metadata was last updated.

      • memberStatus (string) --

        The status of a member in a collaboration.

      • membershipId (string) --

        The unique ID for your membership within the collaboration.

      • membershipArn (string) --

        The unique ARN for your membership within the collaboration.

      • dataEncryptionMetadata (dict) --

        The settings for client-side encryption for cryptographic computing.

        • allowCleartext (boolean) --

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

        • allowDuplicates (boolean) --

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

        • allowJoinsOnColumnsWithDifferentNames (boolean) --

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

        • preserveNulls (boolean) --

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

      • queryLogStatus (string) --

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

CreateMembership (updated) Link ¶
Changes (request, response)
Request
{'paymentConfiguration': {'queryCompute': {'isResponsible': 'boolean'}}}
Response
{'membership': {'paymentConfiguration': {'queryCompute': {'isResponsible': 'boolean'}}}}

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

See also: AWS API Documentation

Request Syntax

client.create_membership(
    collaborationIdentifier='string',
    queryLogStatus='ENABLED'|'DISABLED',
    tags={
        'string': 'string'
    },
    defaultResultConfiguration={
        'outputConfiguration': {
            's3': {
                'resultFormat': 'CSV'|'PARQUET',
                'bucket': 'string',
                'keyPrefix': 'string'
            }
        },
        'roleArn': 'string'
    },
    paymentConfiguration={
        'queryCompute': {
            'isResponsible': True|False
        }
    }
)
type collaborationIdentifier

string

param collaborationIdentifier

[REQUIRED]

The unique ID for the associated collaboration.

type queryLogStatus

string

param queryLogStatus

[REQUIRED]

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

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 defaultResultConfiguration

dict

param defaultResultConfiguration

The default protected query result configuration as specified by the member who can receive 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) --

      Contains the configuration to write the query results to S3.

      • resultFormat (string) -- [REQUIRED]

        Intended file format of the result.

      • bucket (string) -- [REQUIRED]

        The S3 bucket to unload the protected query results.

      • keyPrefix (string) --

        The S3 prefix to unload the protected query results.

  • roleArn (string) --

    The unique ARN for an IAM role that is used by Clean Rooms to write protected query results to the result location, given by the member who can receive results.

type paymentConfiguration

dict

param paymentConfiguration

The payment responsibilities accepted by the collaboration member.

Not required if the collaboration member has the member ability to run queries.

Required if the collaboration member doesn't have the member ability to run queries but is configured as a payer by the collaboration creator.

  • queryCompute (dict) -- [REQUIRED]

    The payment responsibilities accepted by the collaboration member for query compute costs.

    • isResponsible (boolean) -- [REQUIRED]

      Indicates whether the collaboration member has accepted to pay for query compute costs ( TRUE ) or has not accepted to pay for query compute costs ( FALSE ).

      If the collaboration creator has not specified anyone to pay for query compute costs, then the member who can query is the default payer.

      An error message is returned for the following reasons:

      • If you set the value to FALSE but you are responsible to pay for query compute costs.

      • If you set the value to TRUE but you are not responsible to pay for query compute costs.

rtype

dict

returns

Response Syntax

{
    'membership': {
        'id': 'string',
        'arn': 'string',
        'collaborationArn': 'string',
        'collaborationId': 'string',
        'collaborationCreatorAccountId': 'string',
        'collaborationCreatorDisplayName': 'string',
        'collaborationName': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'status': 'ACTIVE'|'REMOVED'|'COLLABORATION_DELETED',
        'memberAbilities': [
            'CAN_QUERY'|'CAN_RECEIVE_RESULTS',
        ],
        'queryLogStatus': 'ENABLED'|'DISABLED',
        'defaultResultConfiguration': {
            'outputConfiguration': {
                's3': {
                    'resultFormat': 'CSV'|'PARQUET',
                    'bucket': 'string',
                    'keyPrefix': 'string'
                }
            },
            'roleArn': 'string'
        },
        'paymentConfiguration': {
            'queryCompute': {
                'isResponsible': True|False
            }
        }
    }
}

Response Structure

  • (dict) --

    • membership (dict) --

      The membership that was created.

      • id (string) --

        The unique ID of the membership.

      • arn (string) --

        The unique ARN for the membership.

      • collaborationArn (string) --

        The unique ARN for the membership's associated collaboration.

      • collaborationId (string) --

        The unique ID for the membership's collaboration.

      • collaborationCreatorAccountId (string) --

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

      • collaborationCreatorDisplayName (string) --

        The display name of the collaboration creator.

      • collaborationName (string) --

        The name of the membership's collaboration.

      • createTime (datetime) --

        The time when the membership was created.

      • updateTime (datetime) --

        The time the membership metadata was last updated.

      • status (string) --

        The status of the membership.

      • memberAbilities (list) --

        The abilities granted to the collaboration member.

        • (string) --

      • queryLogStatus (string) --

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

      • defaultResultConfiguration (dict) --

        The default protected query result configuration as specified by the member who can receive 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) --

            Contains the configuration to write the query results to S3.

            • resultFormat (string) --

              Intended file format of the result.

            • bucket (string) --

              The S3 bucket to unload the protected query results.

            • keyPrefix (string) --

              The S3 prefix to unload the protected query results.

        • roleArn (string) --

          The unique ARN for an IAM role that is used by Clean Rooms to write protected query results to the result location, given by the member who can receive results.

      • paymentConfiguration (dict) --

        The payment responsibilities accepted by the collaboration member.

        • queryCompute (dict) --

          The payment responsibilities accepted by the collaboration member for query compute costs.

          • isResponsible (boolean) --

            Indicates whether the collaboration member has accepted to pay for query compute costs ( TRUE ) or has not accepted to pay for query compute costs ( FALSE ).

            If the collaboration creator has not specified anyone to pay for query compute costs, then the member who can query is the default payer.

            An error message is returned for the following reasons:

            • If you set the value to FALSE but you are responsible to pay for query compute costs.

            • If you set the value to TRUE but you are not responsible to pay for query compute costs.

GetMembership (updated) Link ¶
Changes (response)
{'membership': {'paymentConfiguration': {'queryCompute': {'isResponsible': 'boolean'}}}}

Retrieves a specified membership for an identifier.

See also: AWS API Documentation

Request Syntax

client.get_membership(
    membershipIdentifier='string'
)
type membershipIdentifier

string

param membershipIdentifier

[REQUIRED]

The identifier for a membership resource.

rtype

dict

returns

Response Syntax

{
    'membership': {
        'id': 'string',
        'arn': 'string',
        'collaborationArn': 'string',
        'collaborationId': 'string',
        'collaborationCreatorAccountId': 'string',
        'collaborationCreatorDisplayName': 'string',
        'collaborationName': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'status': 'ACTIVE'|'REMOVED'|'COLLABORATION_DELETED',
        'memberAbilities': [
            'CAN_QUERY'|'CAN_RECEIVE_RESULTS',
        ],
        'queryLogStatus': 'ENABLED'|'DISABLED',
        'defaultResultConfiguration': {
            'outputConfiguration': {
                's3': {
                    'resultFormat': 'CSV'|'PARQUET',
                    'bucket': 'string',
                    'keyPrefix': 'string'
                }
            },
            'roleArn': 'string'
        },
        'paymentConfiguration': {
            'queryCompute': {
                'isResponsible': True|False
            }
        }
    }
}

Response Structure

  • (dict) --

    • membership (dict) --

      The membership retrieved for the provided identifier.

      • id (string) --

        The unique ID of the membership.

      • arn (string) --

        The unique ARN for the membership.

      • collaborationArn (string) --

        The unique ARN for the membership's associated collaboration.

      • collaborationId (string) --

        The unique ID for the membership's collaboration.

      • collaborationCreatorAccountId (string) --

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

      • collaborationCreatorDisplayName (string) --

        The display name of the collaboration creator.

      • collaborationName (string) --

        The name of the membership's collaboration.

      • createTime (datetime) --

        The time when the membership was created.

      • updateTime (datetime) --

        The time the membership metadata was last updated.

      • status (string) --

        The status of the membership.

      • memberAbilities (list) --

        The abilities granted to the collaboration member.

        • (string) --

      • queryLogStatus (string) --

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

      • defaultResultConfiguration (dict) --

        The default protected query result configuration as specified by the member who can receive 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) --

            Contains the configuration to write the query results to S3.

            • resultFormat (string) --

              Intended file format of the result.

            • bucket (string) --

              The S3 bucket to unload the protected query results.

            • keyPrefix (string) --

              The S3 prefix to unload the protected query results.

        • roleArn (string) --

          The unique ARN for an IAM role that is used by Clean Rooms to write protected query results to the result location, given by the member who can receive results.

      • paymentConfiguration (dict) --

        The payment responsibilities accepted by the collaboration member.

        • queryCompute (dict) --

          The payment responsibilities accepted by the collaboration member for query compute costs.

          • isResponsible (boolean) --

            Indicates whether the collaboration member has accepted to pay for query compute costs ( TRUE ) or has not accepted to pay for query compute costs ( FALSE ).

            If the collaboration creator has not specified anyone to pay for query compute costs, then the member who can query is the default payer.

            An error message is returned for the following reasons:

            • If you set the value to FALSE but you are responsible to pay for query compute costs.

            • If you set the value to TRUE but you are not responsible to pay for query compute costs.

ListMembers (updated) Link ¶
Changes (response)
{'memberSummaries': {'paymentConfiguration': {'queryCompute': {'isResponsible': 'boolean'}}}}

Lists all members within a collaboration.

See also: AWS API Documentation

Request Syntax

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

string

param collaborationIdentifier

[REQUIRED]

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

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',
    'memberSummaries': [
        {
            'accountId': 'string',
            'status': 'INVITED'|'ACTIVE'|'LEFT'|'REMOVED',
            'displayName': 'string',
            'abilities': [
                'CAN_QUERY'|'CAN_RECEIVE_RESULTS',
            ],
            'createTime': datetime(2015, 1, 1),
            'updateTime': datetime(2015, 1, 1),
            'membershipId': 'string',
            'membershipArn': 'string',
            'paymentConfiguration': {
                'queryCompute': {
                    'isResponsible': True|False
                }
            }
        },
    ]
}

Response Structure

  • (dict) --

    • nextToken (string) --

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

    • memberSummaries (list) --

      The list of members returned by the ListMembers operation.

      • (dict) --

        The member object listed by the request.

        • accountId (string) --

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

        • status (string) --

          The status of the member.

        • displayName (string) --

          The member's display name.

        • abilities (list) --

          The abilities granted to the collaboration member.

          • (string) --

        • createTime (datetime) --

          The time when the member was created.

        • updateTime (datetime) --

          The time the member metadata was last updated.

        • membershipId (string) --

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

        • membershipArn (string) --

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

        • paymentConfiguration (dict) --

          The collaboration member's payment responsibilities set by the collaboration creator.

          • queryCompute (dict) --

            The collaboration member's payment responsibilities set by the collaboration creator for query compute costs.

            • isResponsible (boolean) --

              Indicates whether the collaboration creator has configured the collaboration member to pay for query compute costs ( TRUE ) or has not configured the collaboration member to pay for query compute costs ( FALSE ).

              Exactly one member can be configured to pay for query compute costs. An error is returned if the collaboration creator sets a TRUE value for more than one member in the collaboration.

              If the collaboration creator hasn't specified anyone as the member paying for query compute costs, then the member who can query is the default payer. An error is returned if the collaboration creator sets a FALSE value for the member who can query.

ListMemberships (updated) Link ¶
Changes (response)
{'membershipSummaries': {'paymentConfiguration': {'queryCompute': {'isResponsible': 'boolean'}}}}

Lists all memberships resources within the caller's account.

See also: AWS API Documentation

Request Syntax

client.list_memberships(
    nextToken='string',
    maxResults=123,
    status='ACTIVE'|'REMOVED'|'COLLABORATION_DELETED'
)
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.

type status

string

param status

A filter which will return only memberships in the specified status.

rtype

dict

returns

Response Syntax

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

Response Structure

  • (dict) --

    • nextToken (string) --

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

    • membershipSummaries (list) --

      The list of memberships returned from the ListMemberships operation.

      • (dict) --

        The membership object listed by the request.

        • id (string) --

          The unique ID for the membership's collaboration.

        • arn (string) --

          The unique ARN for the membership.

        • collaborationArn (string) --

          The unique ARN for the membership's associated collaboration.

        • collaborationId (string) --

          The unique ID for the membership's collaboration.

        • collaborationCreatorAccountId (string) --

          The identifier of the Amazon Web Services principal that created the collaboration. Currently only supports Amazon Web Services account ID.

        • collaborationCreatorDisplayName (string) --

          The display name of the collaboration creator.

        • collaborationName (string) --

          The name for the membership's collaboration.

        • createTime (datetime) --

          The time when the membership was created.

        • updateTime (datetime) --

          The time the membership metadata was last updated.

        • status (string) --

          The status of the membership.

        • memberAbilities (list) --

          The abilities granted to the collaboration member.

          • (string) --

        • paymentConfiguration (dict) --

          The payment responsibilities accepted by the collaboration member.

          • queryCompute (dict) --

            The payment responsibilities accepted by the collaboration member for query compute costs.

            • isResponsible (boolean) --

              Indicates whether the collaboration member has accepted to pay for query compute costs ( TRUE ) or has not accepted to pay for query compute costs ( FALSE ).

              If the collaboration creator has not specified anyone to pay for query compute costs, then the member who can query is the default payer.

              An error message is returned for the following reasons:

              • If you set the value to FALSE but you are responsible to pay for query compute costs.

              • If you set the value to TRUE but you are not responsible to pay for query compute costs.

UpdateMembership (updated) Link ¶
Changes (response)
{'membership': {'paymentConfiguration': {'queryCompute': {'isResponsible': 'boolean'}}}}

Updates a membership.

See also: AWS API Documentation

Request Syntax

client.update_membership(
    membershipIdentifier='string',
    queryLogStatus='ENABLED'|'DISABLED',
    defaultResultConfiguration={
        'outputConfiguration': {
            's3': {
                'resultFormat': 'CSV'|'PARQUET',
                'bucket': 'string',
                'keyPrefix': 'string'
            }
        },
        'roleArn': 'string'
    }
)
type membershipIdentifier

string

param membershipIdentifier

[REQUIRED]

The unique identifier of the membership.

type queryLogStatus

string

param queryLogStatus

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

type defaultResultConfiguration

dict

param defaultResultConfiguration

The default protected query result configuration as specified by the member who can receive 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) --

      Contains the configuration to write the query results to S3.

      • resultFormat (string) -- [REQUIRED]

        Intended file format of the result.

      • bucket (string) -- [REQUIRED]

        The S3 bucket to unload the protected query results.

      • keyPrefix (string) --

        The S3 prefix to unload the protected query results.

  • roleArn (string) --

    The unique ARN for an IAM role that is used by Clean Rooms to write protected query results to the result location, given by the member who can receive results.

rtype

dict

returns

Response Syntax

{
    'membership': {
        'id': 'string',
        'arn': 'string',
        'collaborationArn': 'string',
        'collaborationId': 'string',
        'collaborationCreatorAccountId': 'string',
        'collaborationCreatorDisplayName': 'string',
        'collaborationName': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'status': 'ACTIVE'|'REMOVED'|'COLLABORATION_DELETED',
        'memberAbilities': [
            'CAN_QUERY'|'CAN_RECEIVE_RESULTS',
        ],
        'queryLogStatus': 'ENABLED'|'DISABLED',
        'defaultResultConfiguration': {
            'outputConfiguration': {
                's3': {
                    'resultFormat': 'CSV'|'PARQUET',
                    'bucket': 'string',
                    'keyPrefix': 'string'
                }
            },
            'roleArn': 'string'
        },
        'paymentConfiguration': {
            'queryCompute': {
                'isResponsible': True|False
            }
        }
    }
}

Response Structure

  • (dict) --

    • membership (dict) --

      The membership object.

      • id (string) --

        The unique ID of the membership.

      • arn (string) --

        The unique ARN for the membership.

      • collaborationArn (string) --

        The unique ARN for the membership's associated collaboration.

      • collaborationId (string) --

        The unique ID for the membership's collaboration.

      • collaborationCreatorAccountId (string) --

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

      • collaborationCreatorDisplayName (string) --

        The display name of the collaboration creator.

      • collaborationName (string) --

        The name of the membership's collaboration.

      • createTime (datetime) --

        The time when the membership was created.

      • updateTime (datetime) --

        The time the membership metadata was last updated.

      • status (string) --

        The status of the membership.

      • memberAbilities (list) --

        The abilities granted to the collaboration member.

        • (string) --

      • queryLogStatus (string) --

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

      • defaultResultConfiguration (dict) --

        The default protected query result configuration as specified by the member who can receive 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) --

            Contains the configuration to write the query results to S3.

            • resultFormat (string) --

              Intended file format of the result.

            • bucket (string) --

              The S3 bucket to unload the protected query results.

            • keyPrefix (string) --

              The S3 prefix to unload the protected query results.

        • roleArn (string) --

          The unique ARN for an IAM role that is used by Clean Rooms to write protected query results to the result location, given by the member who can receive results.

      • paymentConfiguration (dict) --

        The payment responsibilities accepted by the collaboration member.

        • queryCompute (dict) --

          The payment responsibilities accepted by the collaboration member for query compute costs.

          • isResponsible (boolean) --

            Indicates whether the collaboration member has accepted to pay for query compute costs ( TRUE ) or has not accepted to pay for query compute costs ( FALSE ).

            If the collaboration creator has not specified anyone to pay for query compute costs, then the member who can query is the default payer.

            An error message is returned for the following reasons:

            • If you set the value to FALSE but you are responsible to pay for query compute costs.

            • If you set the value to TRUE but you are not responsible to pay for query compute costs.