SDK for PHP 3.x

Client: Aws\CleanRooms\CleanRoomsClient
Service ID: cleanrooms
Version: 2022-02-17

This page describes the parameters and results for the operations of the AWS Clean Rooms Service (2022-02-17), and shows how to use the Aws\CleanRooms\CleanRoomsClient object to call the described operations. This documentation is specific to the 2022-02-17 API version of the service.

Operation Summary

Each of the following operations can be created from a client using $client->getCommand('CommandName'), where "CommandName" is the name of one of the following operations. Note: a command is a value that encapsulates an operation and the parameters used to create an HTTP request.

You can also create and send a command immediately using the magic methods available on a client object: $client->commandName(/* parameters */). You can send the command asynchronously (returning a promise) by appending the word "Async" to the operation name: $client->commandNameAsync(/* parameters */).

BatchGetCollaborationAnalysisTemplate ( array $params = [] )
Retrieves multiple analysis templates within a collaboration by their Amazon Resource Names (ARNs).
BatchGetSchema ( array $params = [] )
Retrieves multiple schemas by their identifiers.
BatchGetSchemaAnalysisRule ( array $params = [] )
Retrieves multiple analysis rule schemas.
CreateAnalysisTemplate ( array $params = [] )
Creates a new analysis template.
CreateCollaboration ( array $params = [] )
Creates a new collaboration.
CreateConfiguredAudienceModelAssociation ( array $params = [] )
Provides the details necessary to create a configured audience model association.
CreateConfiguredTable ( array $params = [] )
Creates a new configured table resource.
CreateConfiguredTableAnalysisRule ( array $params = [] )
Creates a new analysis rule for a configured table.
CreateConfiguredTableAssociation ( array $params = [] )
Creates a configured table association.
CreateMembership ( array $params = [] )
Creates a membership for a specific collaboration identifier and joins the collaboration.
CreatePrivacyBudgetTemplate ( array $params = [] )
Creates a privacy budget template for a specified membership.
DeleteAnalysisTemplate ( array $params = [] )
Deletes an analysis template.
DeleteCollaboration ( array $params = [] )
Deletes a collaboration.
DeleteConfiguredAudienceModelAssociation ( array $params = [] )
Provides the information necessary to delete a configured audience model association.
DeleteConfiguredTable ( array $params = [] )
Deletes a configured table.
DeleteConfiguredTableAnalysisRule ( array $params = [] )
Deletes a configured table analysis rule.
DeleteConfiguredTableAssociation ( array $params = [] )
Deletes a configured table association.
DeleteMember ( array $params = [] )
Removes the specified member from a collaboration.
DeleteMembership ( array $params = [] )
Deletes a specified membership.
DeletePrivacyBudgetTemplate ( array $params = [] )
Deletes a privacy budget template for a specified membership.
GetAnalysisTemplate ( array $params = [] )
Retrieves an analysis template.
GetCollaboration ( array $params = [] )
Returns metadata about a collaboration.
GetCollaborationAnalysisTemplate ( array $params = [] )
Retrieves an analysis template within a collaboration.
GetCollaborationConfiguredAudienceModelAssociation ( array $params = [] )
Retrieves a configured audience model association within a collaboration.
GetCollaborationPrivacyBudgetTemplate ( array $params = [] )
Returns details about a specified privacy budget template.
GetConfiguredAudienceModelAssociation ( array $params = [] )
Returns information about a configured audience model association.
GetConfiguredTable ( array $params = [] )
Retrieves a configured table.
GetConfiguredTableAnalysisRule ( array $params = [] )
Retrieves a configured table analysis rule.
GetConfiguredTableAssociation ( array $params = [] )
Retrieves a configured table association.
GetMembership ( array $params = [] )
Retrieves a specified membership for an identifier.
GetPrivacyBudgetTemplate ( array $params = [] )
Returns details for a specified privacy budget template.
GetProtectedQuery ( array $params = [] )
Returns query processing metadata.
GetSchema ( array $params = [] )
Retrieves the schema for a relation within a collaboration.
GetSchemaAnalysisRule ( array $params = [] )
Retrieves a schema analysis rule.
ListAnalysisTemplates ( array $params = [] )
Lists analysis templates that the caller owns.
ListCollaborationAnalysisTemplates ( array $params = [] )
Lists analysis templates within a collaboration.
ListCollaborationConfiguredAudienceModelAssociations ( array $params = [] )
Lists configured audience model associations within a collaboration.
ListCollaborationPrivacyBudgetTemplates ( array $params = [] )
Returns an array that summarizes each privacy budget template in a specified collaboration.
ListCollaborationPrivacyBudgets ( array $params = [] )
Returns an array that summarizes each privacy budget in a specified collaboration.
ListCollaborations ( array $params = [] )
Lists collaborations the caller owns, is active in, or has been invited to.
ListConfiguredAudienceModelAssociations ( array $params = [] )
Lists information about requested configured audience model associations.
ListConfiguredTableAssociations ( array $params = [] )
Lists configured table associations for a membership.
ListConfiguredTables ( array $params = [] )
Lists configured tables.
ListMembers ( array $params = [] )
Lists all members within a collaboration.
ListMemberships ( array $params = [] )
Lists all memberships resources within the caller's account.
ListPrivacyBudgetTemplates ( array $params = [] )
Returns detailed information about the privacy budget templates in a specified membership.
ListPrivacyBudgets ( array $params = [] )
Returns detailed information about the privacy budgets in a specified membership.
ListProtectedQueries ( array $params = [] )
Lists protected queries, sorted by the most recent query.
ListSchemas ( array $params = [] )
Lists the schemas for relations within a collaboration.
ListTagsForResource ( array $params = [] )
Lists all of the tags that have been added to a resource.
PreviewPrivacyImpact ( array $params = [] )
An estimate of the number of aggregation functions that the member who can query can run given epsilon and noise parameters.
StartProtectedQuery ( array $params = [] )
Creates a protected query that is started by Clean Rooms.
TagResource ( array $params = [] )
Tags a resource.
UntagResource ( array $params = [] )
Removes a tag or list of tags from a resource.
UpdateAnalysisTemplate ( array $params = [] )
Updates the analysis template metadata.
UpdateCollaboration ( array $params = [] )
Updates collaboration metadata and can only be called by the collaboration owner.
UpdateConfiguredAudienceModelAssociation ( array $params = [] )
Provides the details necessary to update a configured audience model association.
UpdateConfiguredTable ( array $params = [] )
Updates a configured table.
UpdateConfiguredTableAnalysisRule ( array $params = [] )
Updates a configured table analysis rule.
UpdateConfiguredTableAssociation ( array $params = [] )
Updates a configured table association.
UpdateMembership ( array $params = [] )
Updates a membership.
UpdatePrivacyBudgetTemplate ( array $params = [] )
Updates the privacy budget template for the specified membership.
UpdateProtectedQuery ( array $params = [] )
Updates the processing of a currently running query.

Paginators

Paginators handle automatically iterating over paginated API results. Paginators are associated with specific API operations, and they accept the parameters that the corresponding API operation accepts. You can get a paginator from a client class using getPaginator($paginatorName, $operationParameters). This client supports the following paginators:

ListAnalysisTemplates
ListCollaborationAnalysisTemplates
ListCollaborationConfiguredAudienceModelAssociations
ListCollaborationPrivacyBudgetTemplates
ListCollaborationPrivacyBudgets
ListCollaborations
ListConfiguredAudienceModelAssociations
ListConfiguredTableAssociations
ListConfiguredTables
ListMembers
ListMemberships
ListPrivacyBudgetTemplates
ListPrivacyBudgets
ListProtectedQueries
ListSchemas

Operations

BatchGetCollaborationAnalysisTemplate

$result = $client->batchGetCollaborationAnalysisTemplate([/* ... */]);
$promise = $client->batchGetCollaborationAnalysisTemplateAsync([/* ... */]);

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

Parameter Syntax

$result = $client->batchGetCollaborationAnalysisTemplate([
    'analysisTemplateArns' => ['<string>', ...], // REQUIRED
    'collaborationIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
analysisTemplateArns
Required: Yes
Type: Array of strings

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

collaborationIdentifier
Required: Yes
Type: string

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

Result Syntax

[
    'collaborationAnalysisTemplates' => [
        [
            'analysisParameters' => [
                [
                    'defaultValue' => '<string>',
                    'name' => '<string>',
                    'type' => 'SMALLINT|INTEGER|BIGINT|DECIMAL|REAL|DOUBLE_PRECISION|BOOLEAN|CHAR|VARCHAR|DATE|TIMESTAMP|TIMESTAMPTZ|TIME|TIMETZ|VARBYTE',
                ],
                // ...
            ],
            'arn' => '<string>',
            'collaborationArn' => '<string>',
            'collaborationId' => '<string>',
            'createTime' => <DateTime>,
            'creatorAccountId' => '<string>',
            'description' => '<string>',
            'format' => 'SQL',
            'id' => '<string>',
            'name' => '<string>',
            'schema' => [
                'referencedTables' => ['<string>', ...],
            ],
            'source' => [
                'text' => '<string>',
            ],
            'updateTime' => <DateTime>,
            'validations' => [
                [
                    'reasons' => [
                        [
                            'message' => '<string>',
                        ],
                        // ...
                    ],
                    'status' => 'VALID|INVALID|UNABLE_TO_VALIDATE',
                    'type' => 'DIFFERENTIAL_PRIVACY',
                ],
                // ...
            ],
        ],
        // ...
    ],
    'errors' => [
        [
            'arn' => '<string>',
            'code' => '<string>',
            'message' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
collaborationAnalysisTemplates
Required: Yes
Type: Array of CollaborationAnalysisTemplate structures

The retrieved list of analysis templates within a collaboration.

errors
Required: Yes
Type: Array of BatchGetCollaborationAnalysisTemplateError structures

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.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

BatchGetSchema

$result = $client->batchGetSchema([/* ... */]);
$promise = $client->batchGetSchemaAsync([/* ... */]);

Retrieves multiple schemas by their identifiers.

Parameter Syntax

$result = $client->batchGetSchema([
    'collaborationIdentifier' => '<string>', // REQUIRED
    'names' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
collaborationIdentifier
Required: Yes
Type: string

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

names
Required: Yes
Type: Array of strings

The names for the schema objects to retrieve.

Result Syntax

[
    'errors' => [
        [
            'code' => '<string>',
            'message' => '<string>',
            'name' => '<string>',
        ],
        // ...
    ],
    'schemas' => [
        [
            'analysisMethod' => 'DIRECT_QUERY',
            'analysisRuleTypes' => ['<string>', ...],
            'collaborationArn' => '<string>',
            'collaborationId' => '<string>',
            'columns' => [
                [
                    'name' => '<string>',
                    'type' => '<string>',
                ],
                // ...
            ],
            'createTime' => <DateTime>,
            'creatorAccountId' => '<string>',
            'description' => '<string>',
            'name' => '<string>',
            'partitionKeys' => [
                [
                    'name' => '<string>',
                    'type' => '<string>',
                ],
                // ...
            ],
            'schemaStatusDetails' => [
                [
                    'analysisRuleType' => 'AGGREGATION|LIST|CUSTOM',
                    'configurations' => ['<string>', ...],
                    'reasons' => [
                        [
                            'code' => 'ANALYSIS_RULE_MISSING|ANALYSIS_TEMPLATES_NOT_CONFIGURED|ANALYSIS_PROVIDERS_NOT_CONFIGURED|DIFFERENTIAL_PRIVACY_POLICY_NOT_CONFIGURED',
                            'message' => '<string>',
                        ],
                        // ...
                    ],
                    'status' => 'READY|NOT_READY',
                ],
                // ...
            ],
            'type' => 'TABLE',
            'updateTime' => <DateTime>,
        ],
        // ...
    ],
]

Result Details

Members
errors
Required: Yes
Type: Array of BatchGetSchemaError structures

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

schemas
Required: Yes
Type: Array of Schema structures

The retrieved list of schemas.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

BatchGetSchemaAnalysisRule

$result = $client->batchGetSchemaAnalysisRule([/* ... */]);
$promise = $client->batchGetSchemaAnalysisRuleAsync([/* ... */]);

Retrieves multiple analysis rule schemas.

Parameter Syntax

$result = $client->batchGetSchemaAnalysisRule([
    'collaborationIdentifier' => '<string>', // REQUIRED
    'schemaAnalysisRuleRequests' => [ // REQUIRED
        [
            'name' => '<string>', // REQUIRED
            'type' => 'AGGREGATION|LIST|CUSTOM', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
collaborationIdentifier
Required: Yes
Type: string

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

schemaAnalysisRuleRequests
Required: Yes
Type: Array of SchemaAnalysisRuleRequest structures

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

Result Syntax

[
    'analysisRules' => [
        [
            'collaborationId' => '<string>',
            'createTime' => <DateTime>,
            'name' => '<string>',
            'policy' => [
                'v1' => [
                    'aggregation' => [
                        'aggregateColumns' => [
                            [
                                'columnNames' => ['<string>', ...],
                                'function' => 'SUM|SUM_DISTINCT|COUNT|COUNT_DISTINCT|AVG',
                            ],
                            // ...
                        ],
                        'allowedJoinOperators' => ['<string>', ...],
                        'dimensionColumns' => ['<string>', ...],
                        'joinColumns' => ['<string>', ...],
                        'joinRequired' => 'QUERY_RUNNER',
                        'outputConstraints' => [
                            [
                                'columnName' => '<string>',
                                'minimum' => <integer>,
                                'type' => 'COUNT_DISTINCT',
                            ],
                            // ...
                        ],
                        'scalarFunctions' => ['<string>', ...],
                    ],
                    'custom' => [
                        'allowedAnalyses' => ['<string>', ...],
                        'allowedAnalysisProviders' => ['<string>', ...],
                        'differentialPrivacy' => [
                            'columns' => [
                                [
                                    'name' => '<string>',
                                ],
                                // ...
                            ],
                        ],
                    ],
                    'list' => [
                        'allowedJoinOperators' => ['<string>', ...],
                        'joinColumns' => ['<string>', ...],
                        'listColumns' => ['<string>', ...],
                    ],
                ],
            ],
            'type' => 'AGGREGATION|LIST|CUSTOM',
            'updateTime' => <DateTime>,
        ],
        // ...
    ],
    'errors' => [
        [
            'code' => '<string>',
            'message' => '<string>',
            'name' => '<string>',
            'type' => 'AGGREGATION|LIST|CUSTOM',
        ],
        // ...
    ],
]

Result Details

Members
analysisRules
Required: Yes
Type: Array of AnalysisRule structures

The retrieved list of analysis rules.

errors
Required: Yes
Type: Array of BatchGetSchemaAnalysisRuleError structures

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

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

CreateAnalysisTemplate

$result = $client->createAnalysisTemplate([/* ... */]);
$promise = $client->createAnalysisTemplateAsync([/* ... */]);

Creates a new analysis template.

Parameter Syntax

$result = $client->createAnalysisTemplate([
    'analysisParameters' => [
        [
            'defaultValue' => '<string>',
            'name' => '<string>', // REQUIRED
            'type' => 'SMALLINT|INTEGER|BIGINT|DECIMAL|REAL|DOUBLE_PRECISION|BOOLEAN|CHAR|VARCHAR|DATE|TIMESTAMP|TIMESTAMPTZ|TIME|TIMETZ|VARBYTE', // REQUIRED
        ],
        // ...
    ],
    'description' => '<string>',
    'format' => 'SQL', // REQUIRED
    'membershipIdentifier' => '<string>', // REQUIRED
    'name' => '<string>', // REQUIRED
    'source' => [ // REQUIRED
        'text' => '<string>',
    ],
    'tags' => ['<string>', ...],
]);

Parameter Details

Members
analysisParameters
Type: Array of AnalysisParameter structures

The parameters of the analysis template.

description
Type: string

The description of the analysis template.

format
Required: Yes
Type: string

The format of the analysis template.

membershipIdentifier
Required: Yes
Type: string

The identifier for a membership resource.

name
Required: Yes
Type: string

The name of the analysis template.

source
Required: Yes
Type: AnalysisSource structure

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

tags
Type: Associative array of custom strings keys (TagKey) to strings

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.

Result Syntax

[
    'analysisTemplate' => [
        'analysisParameters' => [
            [
                'defaultValue' => '<string>',
                'name' => '<string>',
                'type' => 'SMALLINT|INTEGER|BIGINT|DECIMAL|REAL|DOUBLE_PRECISION|BOOLEAN|CHAR|VARCHAR|DATE|TIMESTAMP|TIMESTAMPTZ|TIME|TIMETZ|VARBYTE',
            ],
            // ...
        ],
        'arn' => '<string>',
        'collaborationArn' => '<string>',
        'collaborationId' => '<string>',
        'createTime' => <DateTime>,
        'description' => '<string>',
        'format' => 'SQL',
        'id' => '<string>',
        'membershipArn' => '<string>',
        'membershipId' => '<string>',
        'name' => '<string>',
        'schema' => [
            'referencedTables' => ['<string>', ...],
        ],
        'source' => [
            'text' => '<string>',
        ],
        'updateTime' => <DateTime>,
        'validations' => [
            [
                'reasons' => [
                    [
                        'message' => '<string>',
                    ],
                    // ...
                ],
                'status' => 'VALID|INVALID|UNABLE_TO_VALIDATE',
                'type' => 'DIFFERENTIAL_PRIVACY',
            ],
            // ...
        ],
    ],
]

Result Details

Members
analysisTemplate
Required: Yes
Type: AnalysisTemplate structure

The analysis template.

Errors

ConflictException:

Updating or deleting a resource can cause an inconsistent state.

ServiceQuotaExceededException:

Request denied because service quota has been exceeded.

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

CreateCollaboration

$result = $client->createCollaboration([/* ... */]);
$promise = $client->createCollaborationAsync([/* ... */]);

Creates a new collaboration.

Parameter Syntax

$result = $client->createCollaboration([
    'creatorDisplayName' => '<string>', // REQUIRED
    'creatorMemberAbilities' => ['<string>', ...], // REQUIRED
    'creatorPaymentConfiguration' => [
        'queryCompute' => [ // REQUIRED
            'isResponsible' => true || false, // REQUIRED
        ],
    ],
    'dataEncryptionMetadata' => [
        'allowCleartext' => true || false, // REQUIRED
        'allowDuplicates' => true || false, // REQUIRED
        'allowJoinsOnColumnsWithDifferentNames' => true || false, // REQUIRED
        'preserveNulls' => true || false, // REQUIRED
    ],
    'description' => '<string>', // REQUIRED
    'members' => [ // REQUIRED
        [
            'accountId' => '<string>', // REQUIRED
            'displayName' => '<string>', // REQUIRED
            'memberAbilities' => ['<string>', ...], // REQUIRED
            'paymentConfiguration' => [
                'queryCompute' => [ // REQUIRED
                    'isResponsible' => true || false, // REQUIRED
                ],
            ],
        ],
        // ...
    ],
    'name' => '<string>', // REQUIRED
    'queryLogStatus' => 'ENABLED|DISABLED', // REQUIRED
    'tags' => ['<string>', ...],
]);

Parameter Details

Members
creatorDisplayName
Required: Yes
Type: string

The display name of the collaboration creator.

creatorMemberAbilities
Required: Yes
Type: Array of strings

The abilities granted to the collaboration creator.

creatorPaymentConfiguration
Type: PaymentConfiguration structure

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.

dataEncryptionMetadata
Type: DataEncryptionMetadata structure

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

description
Required: Yes
Type: string

A description of the collaboration provided by the collaboration owner.

members
Required: Yes
Type: Array of MemberSpecification structures

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

name
Required: Yes
Type: string

The display name for a collaboration.

queryLogStatus
Required: Yes
Type: string

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

tags
Type: Associative array of custom strings keys (TagKey) to strings

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.

Result Syntax

[
    'collaboration' => [
        'arn' => '<string>',
        'createTime' => <DateTime>,
        'creatorAccountId' => '<string>',
        'creatorDisplayName' => '<string>',
        'dataEncryptionMetadata' => [
            'allowCleartext' => true || false,
            'allowDuplicates' => true || false,
            'allowJoinsOnColumnsWithDifferentNames' => true || false,
            'preserveNulls' => true || false,
        ],
        'description' => '<string>',
        'id' => '<string>',
        'memberStatus' => 'INVITED|ACTIVE|LEFT|REMOVED',
        'membershipArn' => '<string>',
        'membershipId' => '<string>',
        'name' => '<string>',
        'queryLogStatus' => 'ENABLED|DISABLED',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
collaboration
Required: Yes
Type: Collaboration structure

The entire created collaboration object.

Errors

ServiceQuotaExceededException:

Request denied because service quota has been exceeded.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

CreateConfiguredAudienceModelAssociation

$result = $client->createConfiguredAudienceModelAssociation([/* ... */]);
$promise = $client->createConfiguredAudienceModelAssociationAsync([/* ... */]);

Provides the details necessary to create a configured audience model association.

Parameter Syntax

$result = $client->createConfiguredAudienceModelAssociation([
    'configuredAudienceModelArn' => '<string>', // REQUIRED
    'configuredAudienceModelAssociationName' => '<string>', // REQUIRED
    'description' => '<string>',
    'manageResourcePolicies' => true || false, // REQUIRED
    'membershipIdentifier' => '<string>', // REQUIRED
    'tags' => ['<string>', ...],
]);

Parameter Details

Members
configuredAudienceModelArn
Required: Yes
Type: string

A unique identifier for the configured audience model that you want to associate.

configuredAudienceModelAssociationName
Required: Yes
Type: string

The name of the configured audience model association.

description
Type: string

A description of the configured audience model association.

manageResourcePolicies
Required: Yes
Type: boolean

When TRUE, indicates that the resource policy for the configured audience model resource being associated is configured for Clean Rooms to manage permissions related to the given collaboration. When FALSE, indicates that the configured audience model resource owner will manage permissions related to the given collaboration.

Setting this to TRUE requires you to have permissions to create, update, and delete the resource policy for the cleanrooms-ml resource when you call the DeleteConfiguredAudienceModelAssociation resource. In addition, if you are the collaboration creator and specify TRUE, you must have the same permissions when you call the DeleteMember and DeleteCollaboration APIs.

membershipIdentifier
Required: Yes
Type: string

A unique identifier for one of your memberships for a collaboration. The configured audience model is associated to the collaboration that this membership belongs to. Accepts a membership ID.

tags
Type: Associative array of custom strings keys (TagKey) to strings

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.

Result Syntax

[
    'configuredAudienceModelAssociation' => [
        'arn' => '<string>',
        'collaborationArn' => '<string>',
        'collaborationId' => '<string>',
        'configuredAudienceModelArn' => '<string>',
        'createTime' => <DateTime>,
        'description' => '<string>',
        'id' => '<string>',
        'manageResourcePolicies' => true || false,
        'membershipArn' => '<string>',
        'membershipId' => '<string>',
        'name' => '<string>',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
configuredAudienceModelAssociation
Required: Yes
Type: ConfiguredAudienceModelAssociation structure

Information about the configured audience model association.

Errors

ConflictException:

Updating or deleting a resource can cause an inconsistent state.

ServiceQuotaExceededException:

Request denied because service quota has been exceeded.

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

CreateConfiguredTable

$result = $client->createConfiguredTable([/* ... */]);
$promise = $client->createConfiguredTableAsync([/* ... */]);

Creates a new configured table resource.

Parameter Syntax

$result = $client->createConfiguredTable([
    'allowedColumns' => ['<string>', ...], // REQUIRED
    'analysisMethod' => 'DIRECT_QUERY', // REQUIRED
    'description' => '<string>',
    'name' => '<string>', // REQUIRED
    'tableReference' => [ // REQUIRED
        'glue' => [
            'databaseName' => '<string>', // REQUIRED
            'tableName' => '<string>', // REQUIRED
        ],
    ],
    'tags' => ['<string>', ...],
]);

Parameter Details

Members
allowedColumns
Required: Yes
Type: Array of strings

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

analysisMethod
Required: Yes
Type: string

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

description
Type: string

A description for the configured table.

name
Required: Yes
Type: string

The name of the configured table.

tableReference
Required: Yes
Type: TableReference structure

A reference to the Glue table being configured.

tags
Type: Associative array of custom strings keys (TagKey) to strings

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.

Result Syntax

[
    'configuredTable' => [
        'allowedColumns' => ['<string>', ...],
        'analysisMethod' => 'DIRECT_QUERY',
        'analysisRuleTypes' => ['<string>', ...],
        'arn' => '<string>',
        'createTime' => <DateTime>,
        'description' => '<string>',
        'id' => '<string>',
        'name' => '<string>',
        'tableReference' => [
            'glue' => [
                'databaseName' => '<string>',
                'tableName' => '<string>',
            ],
        ],
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
configuredTable
Required: Yes
Type: ConfiguredTable structure

The created configured table.

Errors

ConflictException:

Updating or deleting a resource can cause an inconsistent state.

ServiceQuotaExceededException:

Request denied because service quota has been exceeded.

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

CreateConfiguredTableAnalysisRule

$result = $client->createConfiguredTableAnalysisRule([/* ... */]);
$promise = $client->createConfiguredTableAnalysisRuleAsync([/* ... */]);

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

Parameter Syntax

$result = $client->createConfiguredTableAnalysisRule([
    'analysisRulePolicy' => [ // REQUIRED
        'v1' => [
            'aggregation' => [
                'aggregateColumns' => [ // REQUIRED
                    [
                        'columnNames' => ['<string>', ...], // REQUIRED
                        'function' => 'SUM|SUM_DISTINCT|COUNT|COUNT_DISTINCT|AVG', // REQUIRED
                    ],
                    // ...
                ],
                'allowedJoinOperators' => ['<string>', ...],
                'dimensionColumns' => ['<string>', ...], // REQUIRED
                'joinColumns' => ['<string>', ...], // REQUIRED
                'joinRequired' => 'QUERY_RUNNER',
                'outputConstraints' => [ // REQUIRED
                    [
                        'columnName' => '<string>', // REQUIRED
                        'minimum' => <integer>, // REQUIRED
                        'type' => 'COUNT_DISTINCT', // REQUIRED
                    ],
                    // ...
                ],
                'scalarFunctions' => ['<string>', ...], // REQUIRED
            ],
            'custom' => [
                'allowedAnalyses' => ['<string>', ...], // REQUIRED
                'allowedAnalysisProviders' => ['<string>', ...],
                'differentialPrivacy' => [
                    'columns' => [ // REQUIRED
                        [
                            'name' => '<string>', // REQUIRED
                        ],
                        // ...
                    ],
                ],
            ],
            'list' => [
                'allowedJoinOperators' => ['<string>', ...],
                'joinColumns' => ['<string>', ...], // REQUIRED
                'listColumns' => ['<string>', ...], // REQUIRED
            ],
        ],
    ],
    'analysisRuleType' => 'AGGREGATION|LIST|CUSTOM', // REQUIRED
    'configuredTableIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
analysisRulePolicy
Required: Yes
Type: ConfiguredTableAnalysisRulePolicy structure

The entire created configured table analysis rule object.

analysisRuleType
Required: Yes
Type: string

The type of analysis rule.

configuredTableIdentifier
Required: Yes
Type: string

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

Result Syntax

[
    'analysisRule' => [
        'configuredTableArn' => '<string>',
        'configuredTableId' => '<string>',
        'createTime' => <DateTime>,
        'policy' => [
            'v1' => [
                'aggregation' => [
                    'aggregateColumns' => [
                        [
                            'columnNames' => ['<string>', ...],
                            'function' => 'SUM|SUM_DISTINCT|COUNT|COUNT_DISTINCT|AVG',
                        ],
                        // ...
                    ],
                    'allowedJoinOperators' => ['<string>', ...],
                    'dimensionColumns' => ['<string>', ...],
                    'joinColumns' => ['<string>', ...],
                    'joinRequired' => 'QUERY_RUNNER',
                    'outputConstraints' => [
                        [
                            'columnName' => '<string>',
                            'minimum' => <integer>,
                            'type' => 'COUNT_DISTINCT',
                        ],
                        // ...
                    ],
                    'scalarFunctions' => ['<string>', ...],
                ],
                'custom' => [
                    'allowedAnalyses' => ['<string>', ...],
                    'allowedAnalysisProviders' => ['<string>', ...],
                    'differentialPrivacy' => [
                        'columns' => [
                            [
                                'name' => '<string>',
                            ],
                            // ...
                        ],
                    ],
                ],
                'list' => [
                    'allowedJoinOperators' => ['<string>', ...],
                    'joinColumns' => ['<string>', ...],
                    'listColumns' => ['<string>', ...],
                ],
            ],
        ],
        'type' => 'AGGREGATION|LIST|CUSTOM',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
analysisRule
Required: Yes
Type: ConfiguredTableAnalysisRule structure

The entire created analysis rule.

Errors

ConflictException:

Updating or deleting a resource can cause an inconsistent state.

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

CreateConfiguredTableAssociation

$result = $client->createConfiguredTableAssociation([/* ... */]);
$promise = $client->createConfiguredTableAssociationAsync([/* ... */]);

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

Parameter Syntax

$result = $client->createConfiguredTableAssociation([
    'configuredTableIdentifier' => '<string>', // REQUIRED
    'description' => '<string>',
    'membershipIdentifier' => '<string>', // REQUIRED
    'name' => '<string>', // REQUIRED
    'roleArn' => '<string>', // REQUIRED
    'tags' => ['<string>', ...],
]);

Parameter Details

Members
configuredTableIdentifier
Required: Yes
Type: string

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

description
Type: string

A description for the configured table association.

membershipIdentifier
Required: Yes
Type: string

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

name
Required: Yes
Type: string

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

roleArn
Required: Yes
Type: string

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

tags
Type: Associative array of custom strings keys (TagKey) to strings

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.

Result Syntax

[
    'configuredTableAssociation' => [
        'arn' => '<string>',
        'configuredTableArn' => '<string>',
        'configuredTableId' => '<string>',
        'createTime' => <DateTime>,
        'description' => '<string>',
        'id' => '<string>',
        'membershipArn' => '<string>',
        'membershipId' => '<string>',
        'name' => '<string>',
        'roleArn' => '<string>',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
configuredTableAssociation
Required: Yes
Type: ConfiguredTableAssociation structure

The entire configured table association object.

Errors

ConflictException:

Updating or deleting a resource can cause an inconsistent state.

ServiceQuotaExceededException:

Request denied because service quota has been exceeded.

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

CreateMembership

$result = $client->createMembership([/* ... */]);
$promise = $client->createMembershipAsync([/* ... */]);

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

Parameter Syntax

$result = $client->createMembership([
    'collaborationIdentifier' => '<string>', // REQUIRED
    'defaultResultConfiguration' => [
        'outputConfiguration' => [ // REQUIRED
            's3' => [
                'bucket' => '<string>', // REQUIRED
                'keyPrefix' => '<string>',
                'resultFormat' => 'CSV|PARQUET', // REQUIRED
            ],
        ],
        'roleArn' => '<string>',
    ],
    'paymentConfiguration' => [
        'queryCompute' => [ // REQUIRED
            'isResponsible' => true || false, // REQUIRED
        ],
    ],
    'queryLogStatus' => 'ENABLED|DISABLED', // REQUIRED
    'tags' => ['<string>', ...],
]);

Parameter Details

Members
collaborationIdentifier
Required: Yes
Type: string

The unique ID for the associated collaboration.

defaultResultConfiguration

The default protected query result configuration as specified by the member who can receive results.

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.

queryLogStatus
Required: Yes
Type: string

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

tags
Type: Associative array of custom strings keys (TagKey) to strings

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.

Result Syntax

[
    'membership' => [
        'arn' => '<string>',
        'collaborationArn' => '<string>',
        'collaborationCreatorAccountId' => '<string>',
        'collaborationCreatorDisplayName' => '<string>',
        'collaborationId' => '<string>',
        'collaborationName' => '<string>',
        'createTime' => <DateTime>,
        'defaultResultConfiguration' => [
            'outputConfiguration' => [
                's3' => [
                    'bucket' => '<string>',
                    'keyPrefix' => '<string>',
                    'resultFormat' => 'CSV|PARQUET',
                ],
            ],
            'roleArn' => '<string>',
        ],
        'id' => '<string>',
        'memberAbilities' => ['<string>', ...],
        'paymentConfiguration' => [
            'queryCompute' => [
                'isResponsible' => true || false,
            ],
        ],
        'queryLogStatus' => 'ENABLED|DISABLED',
        'status' => 'ACTIVE|REMOVED|COLLABORATION_DELETED',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
membership
Required: Yes
Type: Membership structure

The membership that was created.

Errors

ConflictException:

Updating or deleting a resource can cause an inconsistent state.

ServiceQuotaExceededException:

Request denied because service quota has been exceeded.

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

CreatePrivacyBudgetTemplate

$result = $client->createPrivacyBudgetTemplate([/* ... */]);
$promise = $client->createPrivacyBudgetTemplateAsync([/* ... */]);

Creates a privacy budget template for a specified membership. Each membership can have only one privacy budget template, but it can be deleted and recreated. If you need to change the privacy budget template for a membership, use the UpdatePrivacyBudgetTemplate operation.

Parameter Syntax

$result = $client->createPrivacyBudgetTemplate([
    'autoRefresh' => 'CALENDAR_MONTH|NONE', // REQUIRED
    'membershipIdentifier' => '<string>', // REQUIRED
    'parameters' => [ // REQUIRED
        'differentialPrivacy' => [
            'epsilon' => <integer>, // REQUIRED
            'usersNoisePerQuery' => <integer>, // REQUIRED
        ],
    ],
    'privacyBudgetType' => 'DIFFERENTIAL_PRIVACY', // REQUIRED
    'tags' => ['<string>', ...],
]);

Parameter Details

Members
autoRefresh
Required: Yes
Type: string

How often the privacy budget refreshes.

If you plan to regularly bring new data into the collaboration, you can use CALENDAR_MONTH to automatically get a new privacy budget for the collaboration every calendar month. Choosing this option allows arbitrary amounts of information to be revealed about rows of the data when repeatedly queries across refreshes. Avoid choosing this if the same rows will be repeatedly queried between privacy budget refreshes.

membershipIdentifier
Required: Yes
Type: string

A unique identifier for one of your memberships for a collaboration. The privacy budget template is created in the collaboration that this membership belongs to. Accepts a membership ID.

parameters
Required: Yes
Type: PrivacyBudgetTemplateParametersInput structure

Specifies your parameters for the privacy budget template.

privacyBudgetType
Required: Yes
Type: string

Specifies the type of the privacy budget template.

tags
Type: Associative array of custom strings keys (TagKey) to strings

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.

Result Syntax

[
    'privacyBudgetTemplate' => [
        'arn' => '<string>',
        'autoRefresh' => 'CALENDAR_MONTH|NONE',
        'collaborationArn' => '<string>',
        'collaborationId' => '<string>',
        'createTime' => <DateTime>,
        'id' => '<string>',
        'membershipArn' => '<string>',
        'membershipId' => '<string>',
        'parameters' => [
            'differentialPrivacy' => [
                'epsilon' => <integer>,
                'usersNoisePerQuery' => <integer>,
            ],
        ],
        'privacyBudgetType' => 'DIFFERENTIAL_PRIVACY',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
privacyBudgetTemplate
Required: Yes
Type: PrivacyBudgetTemplate structure

A summary of the elements in the privacy budget template.

Errors

ConflictException:

Updating or deleting a resource can cause an inconsistent state.

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

DeleteAnalysisTemplate

$result = $client->deleteAnalysisTemplate([/* ... */]);
$promise = $client->deleteAnalysisTemplateAsync([/* ... */]);

Deletes an analysis template.

Parameter Syntax

$result = $client->deleteAnalysisTemplate([
    'analysisTemplateIdentifier' => '<string>', // REQUIRED
    'membershipIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
analysisTemplateIdentifier
Required: Yes
Type: string

The identifier for the analysis template resource.

membershipIdentifier
Required: Yes
Type: string

The identifier for a membership resource.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

DeleteCollaboration

$result = $client->deleteCollaboration([/* ... */]);
$promise = $client->deleteCollaborationAsync([/* ... */]);

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

Parameter Syntax

$result = $client->deleteCollaboration([
    'collaborationIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
collaborationIdentifier
Required: Yes
Type: string

The identifier for the collaboration.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

DeleteConfiguredAudienceModelAssociation

$result = $client->deleteConfiguredAudienceModelAssociation([/* ... */]);
$promise = $client->deleteConfiguredAudienceModelAssociationAsync([/* ... */]);

Provides the information necessary to delete a configured audience model association.

Parameter Syntax

$result = $client->deleteConfiguredAudienceModelAssociation([
    'configuredAudienceModelAssociationIdentifier' => '<string>', // REQUIRED
    'membershipIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
configuredAudienceModelAssociationIdentifier
Required: Yes
Type: string

A unique identifier of the configured audience model association that you want to delete.

membershipIdentifier
Required: Yes
Type: string

A unique identifier of the membership that contains the audience model association that you want to delete.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

DeleteConfiguredTable

$result = $client->deleteConfiguredTable([/* ... */]);
$promise = $client->deleteConfiguredTableAsync([/* ... */]);

Deletes a configured table.

Parameter Syntax

$result = $client->deleteConfiguredTable([
    'configuredTableIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
configuredTableIdentifier
Required: Yes
Type: string

The unique ID for the configured table to delete.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ConflictException:

Updating or deleting a resource can cause an inconsistent state.

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

DeleteConfiguredTableAnalysisRule

$result = $client->deleteConfiguredTableAnalysisRule([/* ... */]);
$promise = $client->deleteConfiguredTableAnalysisRuleAsync([/* ... */]);

Deletes a configured table analysis rule.

Parameter Syntax

$result = $client->deleteConfiguredTableAnalysisRule([
    'analysisRuleType' => 'AGGREGATION|LIST|CUSTOM', // REQUIRED
    'configuredTableIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
analysisRuleType
Required: Yes
Type: string

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

configuredTableIdentifier
Required: Yes
Type: string

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

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ConflictException:

Updating or deleting a resource can cause an inconsistent state.

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

DeleteConfiguredTableAssociation

$result = $client->deleteConfiguredTableAssociation([/* ... */]);
$promise = $client->deleteConfiguredTableAssociationAsync([/* ... */]);

Deletes a configured table association.

Parameter Syntax

$result = $client->deleteConfiguredTableAssociation([
    'configuredTableAssociationIdentifier' => '<string>', // REQUIRED
    'membershipIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
configuredTableAssociationIdentifier
Required: Yes
Type: string

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

membershipIdentifier
Required: Yes
Type: string

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

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ConflictException:

Updating or deleting a resource can cause an inconsistent state.

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

DeleteMember

$result = $client->deleteMember([/* ... */]);
$promise = $client->deleteMemberAsync([/* ... */]);

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

Parameter Syntax

$result = $client->deleteMember([
    'accountId' => '<string>', // REQUIRED
    'collaborationIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
accountId
Required: Yes
Type: string

The account ID of the member to remove.

collaborationIdentifier
Required: Yes
Type: string

The unique identifier for the associated collaboration.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ConflictException:

Updating or deleting a resource can cause an inconsistent state.

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

DeleteMembership

$result = $client->deleteMembership([/* ... */]);
$promise = $client->deleteMembershipAsync([/* ... */]);

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

Parameter Syntax

$result = $client->deleteMembership([
    'membershipIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
membershipIdentifier
Required: Yes
Type: string

The identifier for a membership resource.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ConflictException:

Updating or deleting a resource can cause an inconsistent state.

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

DeletePrivacyBudgetTemplate

$result = $client->deletePrivacyBudgetTemplate([/* ... */]);
$promise = $client->deletePrivacyBudgetTemplateAsync([/* ... */]);

Deletes a privacy budget template for a specified membership.

Parameter Syntax

$result = $client->deletePrivacyBudgetTemplate([
    'membershipIdentifier' => '<string>', // REQUIRED
    'privacyBudgetTemplateIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
membershipIdentifier
Required: Yes
Type: string

A unique identifier for one of your memberships for a collaboration. The privacy budget template is deleted from the collaboration that this membership belongs to. Accepts a membership ID.

privacyBudgetTemplateIdentifier
Required: Yes
Type: string

A unique identifier for your privacy budget template.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

GetAnalysisTemplate

$result = $client->getAnalysisTemplate([/* ... */]);
$promise = $client->getAnalysisTemplateAsync([/* ... */]);

Retrieves an analysis template.

Parameter Syntax

$result = $client->getAnalysisTemplate([
    'analysisTemplateIdentifier' => '<string>', // REQUIRED
    'membershipIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
analysisTemplateIdentifier
Required: Yes
Type: string

The identifier for the analysis template resource.

membershipIdentifier
Required: Yes
Type: string

The identifier for a membership resource.

Result Syntax

[
    'analysisTemplate' => [
        'analysisParameters' => [
            [
                'defaultValue' => '<string>',
                'name' => '<string>',
                'type' => 'SMALLINT|INTEGER|BIGINT|DECIMAL|REAL|DOUBLE_PRECISION|BOOLEAN|CHAR|VARCHAR|DATE|TIMESTAMP|TIMESTAMPTZ|TIME|TIMETZ|VARBYTE',
            ],
            // ...
        ],
        'arn' => '<string>',
        'collaborationArn' => '<string>',
        'collaborationId' => '<string>',
        'createTime' => <DateTime>,
        'description' => '<string>',
        'format' => 'SQL',
        'id' => '<string>',
        'membershipArn' => '<string>',
        'membershipId' => '<string>',
        'name' => '<string>',
        'schema' => [
            'referencedTables' => ['<string>', ...],
        ],
        'source' => [
            'text' => '<string>',
        ],
        'updateTime' => <DateTime>,
        'validations' => [
            [
                'reasons' => [
                    [
                        'message' => '<string>',
                    ],
                    // ...
                ],
                'status' => 'VALID|INVALID|UNABLE_TO_VALIDATE',
                'type' => 'DIFFERENTIAL_PRIVACY',
            ],
            // ...
        ],
    ],
]

Result Details

Members
analysisTemplate
Required: Yes
Type: AnalysisTemplate structure

The analysis template.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

GetCollaboration

$result = $client->getCollaboration([/* ... */]);
$promise = $client->getCollaborationAsync([/* ... */]);

Returns metadata about a collaboration.

Parameter Syntax

$result = $client->getCollaboration([
    'collaborationIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
collaborationIdentifier
Required: Yes
Type: string

The identifier for the collaboration.

Result Syntax

[
    'collaboration' => [
        'arn' => '<string>',
        'createTime' => <DateTime>,
        'creatorAccountId' => '<string>',
        'creatorDisplayName' => '<string>',
        'dataEncryptionMetadata' => [
            'allowCleartext' => true || false,
            'allowDuplicates' => true || false,
            'allowJoinsOnColumnsWithDifferentNames' => true || false,
            'preserveNulls' => true || false,
        ],
        'description' => '<string>',
        'id' => '<string>',
        'memberStatus' => 'INVITED|ACTIVE|LEFT|REMOVED',
        'membershipArn' => '<string>',
        'membershipId' => '<string>',
        'name' => '<string>',
        'queryLogStatus' => 'ENABLED|DISABLED',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
collaboration
Required: Yes
Type: Collaboration structure

The entire collaboration for this identifier.

Errors

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

GetCollaborationAnalysisTemplate

$result = $client->getCollaborationAnalysisTemplate([/* ... */]);
$promise = $client->getCollaborationAnalysisTemplateAsync([/* ... */]);

Retrieves an analysis template within a collaboration.

Parameter Syntax

$result = $client->getCollaborationAnalysisTemplate([
    'analysisTemplateArn' => '<string>', // REQUIRED
    'collaborationIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
analysisTemplateArn
Required: Yes
Type: string

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

collaborationIdentifier
Required: Yes
Type: string

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

Result Syntax

[
    'collaborationAnalysisTemplate' => [
        'analysisParameters' => [
            [
                'defaultValue' => '<string>',
                'name' => '<string>',
                'type' => 'SMALLINT|INTEGER|BIGINT|DECIMAL|REAL|DOUBLE_PRECISION|BOOLEAN|CHAR|VARCHAR|DATE|TIMESTAMP|TIMESTAMPTZ|TIME|TIMETZ|VARBYTE',
            ],
            // ...
        ],
        'arn' => '<string>',
        'collaborationArn' => '<string>',
        'collaborationId' => '<string>',
        'createTime' => <DateTime>,
        'creatorAccountId' => '<string>',
        'description' => '<string>',
        'format' => 'SQL',
        'id' => '<string>',
        'name' => '<string>',
        'schema' => [
            'referencedTables' => ['<string>', ...],
        ],
        'source' => [
            'text' => '<string>',
        ],
        'updateTime' => <DateTime>,
        'validations' => [
            [
                'reasons' => [
                    [
                        'message' => '<string>',
                    ],
                    // ...
                ],
                'status' => 'VALID|INVALID|UNABLE_TO_VALIDATE',
                'type' => 'DIFFERENTIAL_PRIVACY',
            ],
            // ...
        ],
    ],
]

Result Details

Members
collaborationAnalysisTemplate
Required: Yes
Type: CollaborationAnalysisTemplate structure

The analysis template within a collaboration.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

GetCollaborationConfiguredAudienceModelAssociation

$result = $client->getCollaborationConfiguredAudienceModelAssociation([/* ... */]);
$promise = $client->getCollaborationConfiguredAudienceModelAssociationAsync([/* ... */]);

Retrieves a configured audience model association within a collaboration.

Parameter Syntax

$result = $client->getCollaborationConfiguredAudienceModelAssociation([
    'collaborationIdentifier' => '<string>', // REQUIRED
    'configuredAudienceModelAssociationIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
collaborationIdentifier
Required: Yes
Type: string

A unique identifier for the collaboration that the configured audience model association belongs to. Accepts a collaboration ID.

configuredAudienceModelAssociationIdentifier
Required: Yes
Type: string

A unique identifier for the configured audience model association that you want to retrieve.

Result Syntax

[
    'collaborationConfiguredAudienceModelAssociation' => [
        'arn' => '<string>',
        'collaborationArn' => '<string>',
        'collaborationId' => '<string>',
        'configuredAudienceModelArn' => '<string>',
        'createTime' => <DateTime>,
        'creatorAccountId' => '<string>',
        'description' => '<string>',
        'id' => '<string>',
        'name' => '<string>',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
collaborationConfiguredAudienceModelAssociation
Required: Yes
Type: CollaborationConfiguredAudienceModelAssociation structure

The metadata of the configured audience model association.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

GetCollaborationPrivacyBudgetTemplate

$result = $client->getCollaborationPrivacyBudgetTemplate([/* ... */]);
$promise = $client->getCollaborationPrivacyBudgetTemplateAsync([/* ... */]);

Returns details about a specified privacy budget template.

Parameter Syntax

$result = $client->getCollaborationPrivacyBudgetTemplate([
    'collaborationIdentifier' => '<string>', // REQUIRED
    'privacyBudgetTemplateIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
collaborationIdentifier
Required: Yes
Type: string

A unique identifier for one of your collaborations.

privacyBudgetTemplateIdentifier
Required: Yes
Type: string

A unique identifier for one of your privacy budget templates.

Result Syntax

[
    'collaborationPrivacyBudgetTemplate' => [
        'arn' => '<string>',
        'autoRefresh' => 'CALENDAR_MONTH|NONE',
        'collaborationArn' => '<string>',
        'collaborationId' => '<string>',
        'createTime' => <DateTime>,
        'creatorAccountId' => '<string>',
        'id' => '<string>',
        'parameters' => [
            'differentialPrivacy' => [
                'epsilon' => <integer>,
                'usersNoisePerQuery' => <integer>,
            ],
        ],
        'privacyBudgetType' => 'DIFFERENTIAL_PRIVACY',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
collaborationPrivacyBudgetTemplate
Required: Yes
Type: CollaborationPrivacyBudgetTemplate structure

Returns the details of the privacy budget template that you requested.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

GetConfiguredAudienceModelAssociation

$result = $client->getConfiguredAudienceModelAssociation([/* ... */]);
$promise = $client->getConfiguredAudienceModelAssociationAsync([/* ... */]);

Returns information about a configured audience model association.

Parameter Syntax

$result = $client->getConfiguredAudienceModelAssociation([
    'configuredAudienceModelAssociationIdentifier' => '<string>', // REQUIRED
    'membershipIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
configuredAudienceModelAssociationIdentifier
Required: Yes
Type: string

A unique identifier for the configured audience model association that you want to retrieve.

membershipIdentifier
Required: Yes
Type: string

A unique identifier for the membership that contains the configured audience model association that you want to retrieve.

Result Syntax

[
    'configuredAudienceModelAssociation' => [
        'arn' => '<string>',
        'collaborationArn' => '<string>',
        'collaborationId' => '<string>',
        'configuredAudienceModelArn' => '<string>',
        'createTime' => <DateTime>,
        'description' => '<string>',
        'id' => '<string>',
        'manageResourcePolicies' => true || false,
        'membershipArn' => '<string>',
        'membershipId' => '<string>',
        'name' => '<string>',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
configuredAudienceModelAssociation
Required: Yes
Type: ConfiguredAudienceModelAssociation structure

Information about the configured audience model association that you requested.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

GetConfiguredTable

$result = $client->getConfiguredTable([/* ... */]);
$promise = $client->getConfiguredTableAsync([/* ... */]);

Retrieves a configured table.

Parameter Syntax

$result = $client->getConfiguredTable([
    'configuredTableIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
configuredTableIdentifier
Required: Yes
Type: string

The unique ID for the configured table to retrieve.

Result Syntax

[
    'configuredTable' => [
        'allowedColumns' => ['<string>', ...],
        'analysisMethod' => 'DIRECT_QUERY',
        'analysisRuleTypes' => ['<string>', ...],
        'arn' => '<string>',
        'createTime' => <DateTime>,
        'description' => '<string>',
        'id' => '<string>',
        'name' => '<string>',
        'tableReference' => [
            'glue' => [
                'databaseName' => '<string>',
                'tableName' => '<string>',
            ],
        ],
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
configuredTable
Required: Yes
Type: ConfiguredTable structure

The retrieved configured table.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

GetConfiguredTableAnalysisRule

$result = $client->getConfiguredTableAnalysisRule([/* ... */]);
$promise = $client->getConfiguredTableAnalysisRuleAsync([/* ... */]);

Retrieves a configured table analysis rule.

Parameter Syntax

$result = $client->getConfiguredTableAnalysisRule([
    'analysisRuleType' => 'AGGREGATION|LIST|CUSTOM', // REQUIRED
    'configuredTableIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
analysisRuleType
Required: Yes
Type: string

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

configuredTableIdentifier
Required: Yes
Type: string

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

Result Syntax

[
    'analysisRule' => [
        'configuredTableArn' => '<string>',
        'configuredTableId' => '<string>',
        'createTime' => <DateTime>,
        'policy' => [
            'v1' => [
                'aggregation' => [
                    'aggregateColumns' => [
                        [
                            'columnNames' => ['<string>', ...],
                            'function' => 'SUM|SUM_DISTINCT|COUNT|COUNT_DISTINCT|AVG',
                        ],
                        // ...
                    ],
                    'allowedJoinOperators' => ['<string>', ...],
                    'dimensionColumns' => ['<string>', ...],
                    'joinColumns' => ['<string>', ...],
                    'joinRequired' => 'QUERY_RUNNER',
                    'outputConstraints' => [
                        [
                            'columnName' => '<string>',
                            'minimum' => <integer>,
                            'type' => 'COUNT_DISTINCT',
                        ],
                        // ...
                    ],
                    'scalarFunctions' => ['<string>', ...],
                ],
                'custom' => [
                    'allowedAnalyses' => ['<string>', ...],
                    'allowedAnalysisProviders' => ['<string>', ...],
                    'differentialPrivacy' => [
                        'columns' => [
                            [
                                'name' => '<string>',
                            ],
                            // ...
                        ],
                    ],
                ],
                'list' => [
                    'allowedJoinOperators' => ['<string>', ...],
                    'joinColumns' => ['<string>', ...],
                    'listColumns' => ['<string>', ...],
                ],
            ],
        ],
        'type' => 'AGGREGATION|LIST|CUSTOM',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
analysisRule
Required: Yes
Type: ConfiguredTableAnalysisRule structure

The entire analysis rule output.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

GetConfiguredTableAssociation

$result = $client->getConfiguredTableAssociation([/* ... */]);
$promise = $client->getConfiguredTableAssociationAsync([/* ... */]);

Retrieves a configured table association.

Parameter Syntax

$result = $client->getConfiguredTableAssociation([
    'configuredTableAssociationIdentifier' => '<string>', // REQUIRED
    'membershipIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
configuredTableAssociationIdentifier
Required: Yes
Type: string

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

membershipIdentifier
Required: Yes
Type: string

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

Result Syntax

[
    'configuredTableAssociation' => [
        'arn' => '<string>',
        'configuredTableArn' => '<string>',
        'configuredTableId' => '<string>',
        'createTime' => <DateTime>,
        'description' => '<string>',
        'id' => '<string>',
        'membershipArn' => '<string>',
        'membershipId' => '<string>',
        'name' => '<string>',
        'roleArn' => '<string>',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
configuredTableAssociation
Required: Yes
Type: ConfiguredTableAssociation structure

The entire configured table association object.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

GetMembership

$result = $client->getMembership([/* ... */]);
$promise = $client->getMembershipAsync([/* ... */]);

Retrieves a specified membership for an identifier.

Parameter Syntax

$result = $client->getMembership([
    'membershipIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
membershipIdentifier
Required: Yes
Type: string

The identifier for a membership resource.

Result Syntax

[
    'membership' => [
        'arn' => '<string>',
        'collaborationArn' => '<string>',
        'collaborationCreatorAccountId' => '<string>',
        'collaborationCreatorDisplayName' => '<string>',
        'collaborationId' => '<string>',
        'collaborationName' => '<string>',
        'createTime' => <DateTime>,
        'defaultResultConfiguration' => [
            'outputConfiguration' => [
                's3' => [
                    'bucket' => '<string>',
                    'keyPrefix' => '<string>',
                    'resultFormat' => 'CSV|PARQUET',
                ],
            ],
            'roleArn' => '<string>',
        ],
        'id' => '<string>',
        'memberAbilities' => ['<string>', ...],
        'paymentConfiguration' => [
            'queryCompute' => [
                'isResponsible' => true || false,
            ],
        ],
        'queryLogStatus' => 'ENABLED|DISABLED',
        'status' => 'ACTIVE|REMOVED|COLLABORATION_DELETED',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
membership
Required: Yes
Type: Membership structure

The membership retrieved for the provided identifier.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

GetPrivacyBudgetTemplate

$result = $client->getPrivacyBudgetTemplate([/* ... */]);
$promise = $client->getPrivacyBudgetTemplateAsync([/* ... */]);

Returns details for a specified privacy budget template.

Parameter Syntax

$result = $client->getPrivacyBudgetTemplate([
    'membershipIdentifier' => '<string>', // REQUIRED
    'privacyBudgetTemplateIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
membershipIdentifier
Required: Yes
Type: string

A unique identifier for one of your memberships for a collaboration. The privacy budget template is retrieved from the collaboration that this membership belongs to. Accepts a membership ID.

privacyBudgetTemplateIdentifier
Required: Yes
Type: string

A unique identifier for your privacy budget template.

Result Syntax

[
    'privacyBudgetTemplate' => [
        'arn' => '<string>',
        'autoRefresh' => 'CALENDAR_MONTH|NONE',
        'collaborationArn' => '<string>',
        'collaborationId' => '<string>',
        'createTime' => <DateTime>,
        'id' => '<string>',
        'membershipArn' => '<string>',
        'membershipId' => '<string>',
        'parameters' => [
            'differentialPrivacy' => [
                'epsilon' => <integer>,
                'usersNoisePerQuery' => <integer>,
            ],
        ],
        'privacyBudgetType' => 'DIFFERENTIAL_PRIVACY',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
privacyBudgetTemplate
Required: Yes
Type: PrivacyBudgetTemplate structure

Returns the details of the privacy budget template that you requested.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

GetProtectedQuery

$result = $client->getProtectedQuery([/* ... */]);
$promise = $client->getProtectedQueryAsync([/* ... */]);

Returns query processing metadata.

Parameter Syntax

$result = $client->getProtectedQuery([
    'membershipIdentifier' => '<string>', // REQUIRED
    'protectedQueryIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
membershipIdentifier
Required: Yes
Type: string

The identifier for a membership in a protected query instance.

protectedQueryIdentifier
Required: Yes
Type: string

The identifier for a protected query instance.

Result Syntax

[
    'protectedQuery' => [
        'createTime' => <DateTime>,
        'differentialPrivacy' => [
            'sensitivityParameters' => [
                [
                    'aggregationExpression' => '<string>',
                    'aggregationType' => 'AVG|COUNT|COUNT_DISTINCT|SUM|STDDEV',
                    'maxColumnValue' => <float>,
                    'minColumnValue' => <float>,
                    'userContributionLimit' => <integer>,
                ],
                // ...
            ],
        ],
        'error' => [
            'code' => '<string>',
            'message' => '<string>',
        ],
        'id' => '<string>',
        'membershipArn' => '<string>',
        'membershipId' => '<string>',
        'result' => [
            'output' => [
                'memberList' => [
                    [
                        'accountId' => '<string>',
                    ],
                    // ...
                ],
                's3' => [
                    'location' => '<string>',
                ],
            ],
        ],
        'resultConfiguration' => [
            'outputConfiguration' => [
                's3' => [
                    'bucket' => '<string>',
                    'keyPrefix' => '<string>',
                    'resultFormat' => 'CSV|PARQUET',
                ],
            ],
        ],
        'sqlParameters' => [
            'analysisTemplateArn' => '<string>',
            'parameters' => ['<string>', ...],
            'queryString' => '<string>',
        ],
        'statistics' => [
            'totalDurationInMillis' => <integer>,
        ],
        'status' => 'SUBMITTED|STARTED|CANCELLED|CANCELLING|FAILED|SUCCESS|TIMED_OUT',
    ],
]

Result Details

Members
protectedQuery
Required: Yes
Type: ProtectedQuery structure

The query processing metadata.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

GetSchema

$result = $client->getSchema([/* ... */]);
$promise = $client->getSchemaAsync([/* ... */]);

Retrieves the schema for a relation within a collaboration.

Parameter Syntax

$result = $client->getSchema([
    'collaborationIdentifier' => '<string>', // REQUIRED
    'name' => '<string>', // REQUIRED
]);

Parameter Details

Members
collaborationIdentifier
Required: Yes
Type: string

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

name
Required: Yes
Type: string

The name of the relation to retrieve the schema for.

Result Syntax

[
    'schema' => [
        'analysisMethod' => 'DIRECT_QUERY',
        'analysisRuleTypes' => ['<string>', ...],
        'collaborationArn' => '<string>',
        'collaborationId' => '<string>',
        'columns' => [
            [
                'name' => '<string>',
                'type' => '<string>',
            ],
            // ...
        ],
        'createTime' => <DateTime>,
        'creatorAccountId' => '<string>',
        'description' => '<string>',
        'name' => '<string>',
        'partitionKeys' => [
            [
                'name' => '<string>',
                'type' => '<string>',
            ],
            // ...
        ],
        'schemaStatusDetails' => [
            [
                'analysisRuleType' => 'AGGREGATION|LIST|CUSTOM',
                'configurations' => ['<string>', ...],
                'reasons' => [
                    [
                        'code' => 'ANALYSIS_RULE_MISSING|ANALYSIS_TEMPLATES_NOT_CONFIGURED|ANALYSIS_PROVIDERS_NOT_CONFIGURED|DIFFERENTIAL_PRIVACY_POLICY_NOT_CONFIGURED',
                        'message' => '<string>',
                    ],
                    // ...
                ],
                'status' => 'READY|NOT_READY',
            ],
            // ...
        ],
        'type' => 'TABLE',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
schema
Required: Yes
Type: Schema structure

The entire schema object.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

GetSchemaAnalysisRule

$result = $client->getSchemaAnalysisRule([/* ... */]);
$promise = $client->getSchemaAnalysisRuleAsync([/* ... */]);

Retrieves a schema analysis rule.

Parameter Syntax

$result = $client->getSchemaAnalysisRule([
    'collaborationIdentifier' => '<string>', // REQUIRED
    'name' => '<string>', // REQUIRED
    'type' => 'AGGREGATION|LIST|CUSTOM', // REQUIRED
]);

Parameter Details

Members
collaborationIdentifier
Required: Yes
Type: string

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

name
Required: Yes
Type: string

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

type
Required: Yes
Type: string

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.

Result Syntax

[
    'analysisRule' => [
        'collaborationId' => '<string>',
        'createTime' => <DateTime>,
        'name' => '<string>',
        'policy' => [
            'v1' => [
                'aggregation' => [
                    'aggregateColumns' => [
                        [
                            'columnNames' => ['<string>', ...],
                            'function' => 'SUM|SUM_DISTINCT|COUNT|COUNT_DISTINCT|AVG',
                        ],
                        // ...
                    ],
                    'allowedJoinOperators' => ['<string>', ...],
                    'dimensionColumns' => ['<string>', ...],
                    'joinColumns' => ['<string>', ...],
                    'joinRequired' => 'QUERY_RUNNER',
                    'outputConstraints' => [
                        [
                            'columnName' => '<string>',
                            'minimum' => <integer>,
                            'type' => 'COUNT_DISTINCT',
                        ],
                        // ...
                    ],
                    'scalarFunctions' => ['<string>', ...],
                ],
                'custom' => [
                    'allowedAnalyses' => ['<string>', ...],
                    'allowedAnalysisProviders' => ['<string>', ...],
                    'differentialPrivacy' => [
                        'columns' => [
                            [
                                'name' => '<string>',
                            ],
                            // ...
                        ],
                    ],
                ],
                'list' => [
                    'allowedJoinOperators' => ['<string>', ...],
                    'joinColumns' => ['<string>', ...],
                    'listColumns' => ['<string>', ...],
                ],
            ],
        ],
        'type' => 'AGGREGATION|LIST|CUSTOM',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
analysisRule
Required: Yes
Type: AnalysisRule structure

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

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

ListAnalysisTemplates

$result = $client->listAnalysisTemplates([/* ... */]);
$promise = $client->listAnalysisTemplatesAsync([/* ... */]);

Lists analysis templates that the caller owns.

Parameter Syntax

$result = $client->listAnalysisTemplates([
    'maxResults' => <integer>,
    'membershipIdentifier' => '<string>', // REQUIRED
    'nextToken' => '<string>',
]);

Parameter Details

Members
maxResults
Type: int

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

membershipIdentifier
Required: Yes
Type: string

The identifier for a membership resource.

nextToken
Type: string

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

Result Syntax

[
    'analysisTemplateSummaries' => [
        [
            'arn' => '<string>',
            'collaborationArn' => '<string>',
            'collaborationId' => '<string>',
            'createTime' => <DateTime>,
            'description' => '<string>',
            'id' => '<string>',
            'membershipArn' => '<string>',
            'membershipId' => '<string>',
            'name' => '<string>',
            'updateTime' => <DateTime>,
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
analysisTemplateSummaries
Required: Yes
Type: Array of AnalysisTemplateSummary structures

Lists analysis template metadata.

nextToken
Type: string

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

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

ListCollaborationAnalysisTemplates

$result = $client->listCollaborationAnalysisTemplates([/* ... */]);
$promise = $client->listCollaborationAnalysisTemplatesAsync([/* ... */]);

Lists analysis templates within a collaboration.

Parameter Syntax

$result = $client->listCollaborationAnalysisTemplates([
    'collaborationIdentifier' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
collaborationIdentifier
Required: Yes
Type: string

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

maxResults
Type: int

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

nextToken
Type: string

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

Result Syntax

[
    'collaborationAnalysisTemplateSummaries' => [
        [
            'arn' => '<string>',
            'collaborationArn' => '<string>',
            'collaborationId' => '<string>',
            'createTime' => <DateTime>,
            'creatorAccountId' => '<string>',
            'description' => '<string>',
            'id' => '<string>',
            'name' => '<string>',
            'updateTime' => <DateTime>,
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
collaborationAnalysisTemplateSummaries
Required: Yes
Type: Array of CollaborationAnalysisTemplateSummary structures

The metadata of the analysis template within a collaboration.

nextToken
Type: string

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

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

ListCollaborationConfiguredAudienceModelAssociations

$result = $client->listCollaborationConfiguredAudienceModelAssociations([/* ... */]);
$promise = $client->listCollaborationConfiguredAudienceModelAssociationsAsync([/* ... */]);

Lists configured audience model associations within a collaboration.

Parameter Syntax

$result = $client->listCollaborationConfiguredAudienceModelAssociations([
    'collaborationIdentifier' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
collaborationIdentifier
Required: Yes
Type: string

A unique identifier for the collaboration that the configured audience model association belongs to. Accepts a collaboration ID.

maxResults
Type: int

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

nextToken
Type: string

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

Result Syntax

[
    'collaborationConfiguredAudienceModelAssociationSummaries' => [
        [
            'arn' => '<string>',
            'collaborationArn' => '<string>',
            'collaborationId' => '<string>',
            'createTime' => <DateTime>,
            'creatorAccountId' => '<string>',
            'description' => '<string>',
            'id' => '<string>',
            'name' => '<string>',
            'updateTime' => <DateTime>,
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
collaborationConfiguredAudienceModelAssociationSummaries
Required: Yes
Type: Array of CollaborationConfiguredAudienceModelAssociationSummary structures

The metadata of the configured audience model association within a collaboration.

nextToken
Type: string

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

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

ListCollaborationPrivacyBudgetTemplates

$result = $client->listCollaborationPrivacyBudgetTemplates([/* ... */]);
$promise = $client->listCollaborationPrivacyBudgetTemplatesAsync([/* ... */]);

Returns an array that summarizes each privacy budget template in a specified collaboration.

Parameter Syntax

$result = $client->listCollaborationPrivacyBudgetTemplates([
    'collaborationIdentifier' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
collaborationIdentifier
Required: Yes
Type: string

A unique identifier for one of your collaborations.

maxResults
Type: int

The maximum size of the results that is returned per call. Service chooses a default if it has not been set. Service may return a nextToken even if the maximum results has not been met.

nextToken
Type: string

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

Result Syntax

[
    'collaborationPrivacyBudgetTemplateSummaries' => [
        [
            'arn' => '<string>',
            'collaborationArn' => '<string>',
            'collaborationId' => '<string>',
            'createTime' => <DateTime>,
            'creatorAccountId' => '<string>',
            'id' => '<string>',
            'privacyBudgetType' => 'DIFFERENTIAL_PRIVACY',
            'updateTime' => <DateTime>,
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
collaborationPrivacyBudgetTemplateSummaries
Required: Yes
Type: Array of CollaborationPrivacyBudgetTemplateSummary structures

An array that summarizes the collaboration privacy budget templates. The summary includes collaboration information, creation information, the privacy budget type.

nextToken
Type: string

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

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

ListCollaborationPrivacyBudgets

$result = $client->listCollaborationPrivacyBudgets([/* ... */]);
$promise = $client->listCollaborationPrivacyBudgetsAsync([/* ... */]);

Returns an array that summarizes each privacy budget in a specified collaboration. The summary includes the collaboration ARN, creation time, creating account, and privacy budget details.

Parameter Syntax

$result = $client->listCollaborationPrivacyBudgets([
    'collaborationIdentifier' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
    'privacyBudgetType' => 'DIFFERENTIAL_PRIVACY', // REQUIRED
]);

Parameter Details

Members
collaborationIdentifier
Required: Yes
Type: string

A unique identifier for one of your collaborations.

maxResults
Type: int

The maximum size of the results that is returned per call. Service chooses a default if it has not been set. Service may return a nextToken even if the maximum results has not been met.

nextToken
Type: string

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

privacyBudgetType
Required: Yes
Type: string

Specifies the type of the privacy budget.

Result Syntax

[
    'collaborationPrivacyBudgetSummaries' => [
        [
            'budget' => [
                'differentialPrivacy' => [
                    'aggregations' => [
                        [
                            'maxCount' => <integer>,
                            'remainingCount' => <integer>,
                            'type' => 'AVG|COUNT|COUNT_DISTINCT|SUM|STDDEV',
                        ],
                        // ...
                    ],
                    'epsilon' => <integer>,
                ],
            ],
            'collaborationArn' => '<string>',
            'collaborationId' => '<string>',
            'createTime' => <DateTime>,
            'creatorAccountId' => '<string>',
            'id' => '<string>',
            'privacyBudgetTemplateArn' => '<string>',
            'privacyBudgetTemplateId' => '<string>',
            'type' => 'DIFFERENTIAL_PRIVACY',
            'updateTime' => <DateTime>,
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
collaborationPrivacyBudgetSummaries
Required: Yes
Type: Array of CollaborationPrivacyBudgetSummary structures

Summaries of the collaboration privacy budgets.

nextToken
Type: string

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

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

ListCollaborations

$result = $client->listCollaborations([/* ... */]);
$promise = $client->listCollaborationsAsync([/* ... */]);

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

Parameter Syntax

$result = $client->listCollaborations([
    'maxResults' => <integer>,
    'memberStatus' => 'INVITED|ACTIVE',
    'nextToken' => '<string>',
]);

Parameter Details

Members
maxResults
Type: int

The maximum size of the results that is returned per call. Service chooses a default if it has not been set. Service may return a nextToken even if the maximum results has not been met.

memberStatus
Type: string

The caller's status in a collaboration.

nextToken
Type: string

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

Result Syntax

[
    'collaborationList' => [
        [
            'arn' => '<string>',
            'createTime' => <DateTime>,
            'creatorAccountId' => '<string>',
            'creatorDisplayName' => '<string>',
            'id' => '<string>',
            'memberStatus' => 'INVITED|ACTIVE|LEFT|REMOVED',
            'membershipArn' => '<string>',
            'membershipId' => '<string>',
            'name' => '<string>',
            'updateTime' => <DateTime>,
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
collaborationList
Required: Yes
Type: Array of CollaborationSummary structures

The list of collaborations.

nextToken
Type: string

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

Errors

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

ListConfiguredAudienceModelAssociations

$result = $client->listConfiguredAudienceModelAssociations([/* ... */]);
$promise = $client->listConfiguredAudienceModelAssociationsAsync([/* ... */]);

Lists information about requested configured audience model associations.

Parameter Syntax

$result = $client->listConfiguredAudienceModelAssociations([
    'maxResults' => <integer>,
    'membershipIdentifier' => '<string>', // REQUIRED
    'nextToken' => '<string>',
]);

Parameter Details

Members
maxResults
Type: int

The maximum size of the results that is returned per call. Service chooses a default if it has not been set. Service may return a nextToken even if the maximum results has not been met.

membershipIdentifier
Required: Yes
Type: string

A unique identifier for a membership that contains the configured audience model associations that you want to retrieve.

nextToken
Type: string

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

Result Syntax

[
    'configuredAudienceModelAssociationSummaries' => [
        [
            'arn' => '<string>',
            'collaborationArn' => '<string>',
            'collaborationId' => '<string>',
            'configuredAudienceModelArn' => '<string>',
            'createTime' => <DateTime>,
            'description' => '<string>',
            'id' => '<string>',
            'membershipArn' => '<string>',
            'membershipId' => '<string>',
            'name' => '<string>',
            'updateTime' => <DateTime>,
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
configuredAudienceModelAssociationSummaries
Required: Yes
Type: Array of ConfiguredAudienceModelAssociationSummary structures

Summaries of the configured audience model associations that you requested.

nextToken
Type: string

The token value provided to access the next page of results.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

ListConfiguredTableAssociations

$result = $client->listConfiguredTableAssociations([/* ... */]);
$promise = $client->listConfiguredTableAssociationsAsync([/* ... */]);

Lists configured table associations for a membership.

Parameter Syntax

$result = $client->listConfiguredTableAssociations([
    'maxResults' => <integer>,
    'membershipIdentifier' => '<string>', // REQUIRED
    'nextToken' => '<string>',
]);

Parameter Details

Members
maxResults
Type: int

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

membershipIdentifier
Required: Yes
Type: string

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

nextToken
Type: string

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

Result Syntax

[
    'configuredTableAssociationSummaries' => [
        [
            'arn' => '<string>',
            'configuredTableId' => '<string>',
            'createTime' => <DateTime>,
            'id' => '<string>',
            'membershipArn' => '<string>',
            'membershipId' => '<string>',
            'name' => '<string>',
            'updateTime' => <DateTime>,
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
configuredTableAssociationSummaries
Required: Yes
Type: Array of ConfiguredTableAssociationSummary structures

The retrieved list of configured table associations.

nextToken
Type: string

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

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

ListConfiguredTables

$result = $client->listConfiguredTables([/* ... */]);
$promise = $client->listConfiguredTablesAsync([/* ... */]);

Lists configured tables.

Parameter Syntax

$result = $client->listConfiguredTables([
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
maxResults
Type: int

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

nextToken
Type: string

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

Result Syntax

[
    'configuredTableSummaries' => [
        [
            'analysisMethod' => 'DIRECT_QUERY',
            'analysisRuleTypes' => ['<string>', ...],
            'arn' => '<string>',
            'createTime' => <DateTime>,
            'id' => '<string>',
            'name' => '<string>',
            'updateTime' => <DateTime>,
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
configuredTableSummaries
Required: Yes
Type: Array of ConfiguredTableSummary structures

The configured tables listed by the request.

nextToken
Type: string

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

Errors

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

ListMembers

$result = $client->listMembers([/* ... */]);
$promise = $client->listMembersAsync([/* ... */]);

Lists all members within a collaboration.

Parameter Syntax

$result = $client->listMembers([
    'collaborationIdentifier' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
collaborationIdentifier
Required: Yes
Type: string

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

maxResults
Type: int

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

nextToken
Type: string

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

Result Syntax

[
    'memberSummaries' => [
        [
            'abilities' => ['<string>', ...],
            'accountId' => '<string>',
            'createTime' => <DateTime>,
            'displayName' => '<string>',
            'membershipArn' => '<string>',
            'membershipId' => '<string>',
            'paymentConfiguration' => [
                'queryCompute' => [
                    'isResponsible' => true || false,
                ],
            ],
            'status' => 'INVITED|ACTIVE|LEFT|REMOVED',
            'updateTime' => <DateTime>,
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
memberSummaries
Required: Yes
Type: Array of MemberSummary structures

The list of members returned by the ListMembers operation.

nextToken
Type: string

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

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

ListMemberships

$result = $client->listMemberships([/* ... */]);
$promise = $client->listMembershipsAsync([/* ... */]);

Lists all memberships resources within the caller's account.

Parameter Syntax

$result = $client->listMemberships([
    'maxResults' => <integer>,
    'nextToken' => '<string>',
    'status' => 'ACTIVE|REMOVED|COLLABORATION_DELETED',
]);

Parameter Details

Members
maxResults
Type: int

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

nextToken
Type: string

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

status
Type: string

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

Result Syntax

[
    'membershipSummaries' => [
        [
            'arn' => '<string>',
            'collaborationArn' => '<string>',
            'collaborationCreatorAccountId' => '<string>',
            'collaborationCreatorDisplayName' => '<string>',
            'collaborationId' => '<string>',
            'collaborationName' => '<string>',
            'createTime' => <DateTime>,
            'id' => '<string>',
            'memberAbilities' => ['<string>', ...],
            'paymentConfiguration' => [
                'queryCompute' => [
                    'isResponsible' => true || false,
                ],
            ],
            'status' => 'ACTIVE|REMOVED|COLLABORATION_DELETED',
            'updateTime' => <DateTime>,
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
membershipSummaries
Required: Yes
Type: Array of MembershipSummary structures

The list of memberships returned from the ListMemberships operation.

nextToken
Type: string

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

Errors

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

ListPrivacyBudgetTemplates

$result = $client->listPrivacyBudgetTemplates([/* ... */]);
$promise = $client->listPrivacyBudgetTemplatesAsync([/* ... */]);

Returns detailed information about the privacy budget templates in a specified membership.

Parameter Syntax

$result = $client->listPrivacyBudgetTemplates([
    'maxResults' => <integer>,
    'membershipIdentifier' => '<string>', // REQUIRED
    'nextToken' => '<string>',
]);

Parameter Details

Members
maxResults
Type: int

The maximum size of the results that is returned per call. Service chooses a default if it has not been set. Service may return a nextToken even if the maximum results has not been met.

membershipIdentifier
Required: Yes
Type: string

A unique identifier for one of your memberships for a collaboration. The privacy budget templates are retrieved from the collaboration that this membership belongs to. Accepts a membership ID.

nextToken
Type: string

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

Result Syntax

[
    'nextToken' => '<string>',
    'privacyBudgetTemplateSummaries' => [
        [
            'arn' => '<string>',
            'collaborationArn' => '<string>',
            'collaborationId' => '<string>',
            'createTime' => <DateTime>,
            'id' => '<string>',
            'membershipArn' => '<string>',
            'membershipId' => '<string>',
            'privacyBudgetType' => 'DIFFERENTIAL_PRIVACY',
            'updateTime' => <DateTime>,
        ],
        // ...
    ],
]

Result Details

Members
nextToken
Type: string

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

privacyBudgetTemplateSummaries
Required: Yes
Type: Array of PrivacyBudgetTemplateSummary structures

An array that summarizes the privacy budget templates. The summary includes collaboration information, creation information, and privacy budget type.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

ListPrivacyBudgets

$result = $client->listPrivacyBudgets([/* ... */]);
$promise = $client->listPrivacyBudgetsAsync([/* ... */]);

Returns detailed information about the privacy budgets in a specified membership.

Parameter Syntax

$result = $client->listPrivacyBudgets([
    'maxResults' => <integer>,
    'membershipIdentifier' => '<string>', // REQUIRED
    'nextToken' => '<string>',
    'privacyBudgetType' => 'DIFFERENTIAL_PRIVACY', // REQUIRED
]);

Parameter Details

Members
maxResults
Type: int

The maximum size of the results that is returned per call. Service chooses a default if it has not been set. Service may return a nextToken even if the maximum results has not been met.

membershipIdentifier
Required: Yes
Type: string

A unique identifier for one of your memberships for a collaboration. The privacy budget is retrieved from the collaboration that this membership belongs to. Accepts a membership ID.

nextToken
Type: string

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

privacyBudgetType
Required: Yes
Type: string

The privacy budget type.

Result Syntax

[
    'nextToken' => '<string>',
    'privacyBudgetSummaries' => [
        [
            'budget' => [
                'differentialPrivacy' => [
                    'aggregations' => [
                        [
                            'maxCount' => <integer>,
                            'remainingCount' => <integer>,
                            'type' => 'AVG|COUNT|COUNT_DISTINCT|SUM|STDDEV',
                        ],
                        // ...
                    ],
                    'epsilon' => <integer>,
                ],
            ],
            'collaborationArn' => '<string>',
            'collaborationId' => '<string>',
            'createTime' => <DateTime>,
            'id' => '<string>',
            'membershipArn' => '<string>',
            'membershipId' => '<string>',
            'privacyBudgetTemplateArn' => '<string>',
            'privacyBudgetTemplateId' => '<string>',
            'type' => 'DIFFERENTIAL_PRIVACY',
            'updateTime' => <DateTime>,
        ],
        // ...
    ],
]

Result Details

Members
nextToken
Type: string

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

privacyBudgetSummaries
Required: Yes
Type: Array of PrivacyBudgetSummary structures

An array that summarizes the privacy budgets. The summary includes collaboration information, membership information, privacy budget template information, and privacy budget details.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

ListProtectedQueries

$result = $client->listProtectedQueries([/* ... */]);
$promise = $client->listProtectedQueriesAsync([/* ... */]);

Lists protected queries, sorted by the most recent query.

Parameter Syntax

$result = $client->listProtectedQueries([
    'maxResults' => <integer>,
    'membershipIdentifier' => '<string>', // REQUIRED
    'nextToken' => '<string>',
    'status' => 'SUBMITTED|STARTED|CANCELLED|CANCELLING|FAILED|SUCCESS|TIMED_OUT',
]);

Parameter Details

Members
maxResults
Type: int

The maximum size of the results that is returned per call. Service chooses a default if it has not been set. Service can return a nextToken even if the maximum results has not been met.

membershipIdentifier
Required: Yes
Type: string

The identifier for the membership in the collaboration.

nextToken
Type: string

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

status
Type: string

A filter on the status of the protected query.

Result Syntax

[
    'nextToken' => '<string>',
    'protectedQueries' => [
        [
            'createTime' => <DateTime>,
            'id' => '<string>',
            'membershipArn' => '<string>',
            'membershipId' => '<string>',
            'status' => 'SUBMITTED|STARTED|CANCELLED|CANCELLING|FAILED|SUCCESS|TIMED_OUT',
        ],
        // ...
    ],
]

Result Details

Members
nextToken
Type: string

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

protectedQueries
Required: Yes
Type: Array of ProtectedQuerySummary structures

A list of protected queries.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

ListSchemas

$result = $client->listSchemas([/* ... */]);
$promise = $client->listSchemasAsync([/* ... */]);

Lists the schemas for relations within a collaboration.

Parameter Syntax

$result = $client->listSchemas([
    'collaborationIdentifier' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
    'schemaType' => 'TABLE',
]);

Parameter Details

Members
collaborationIdentifier
Required: Yes
Type: string

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

maxResults
Type: int

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

nextToken
Type: string

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

schemaType
Type: string

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

Result Syntax

[
    'nextToken' => '<string>',
    'schemaSummaries' => [
        [
            'analysisMethod' => 'DIRECT_QUERY',
            'analysisRuleTypes' => ['<string>', ...],
            'collaborationArn' => '<string>',
            'collaborationId' => '<string>',
            'createTime' => <DateTime>,
            'creatorAccountId' => '<string>',
            'name' => '<string>',
            'type' => 'TABLE',
            'updateTime' => <DateTime>,
        ],
        // ...
    ],
]

Result Details

Members
nextToken
Type: string

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

schemaSummaries
Required: Yes
Type: Array of SchemaSummary structures

The retrieved list of schemas.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

ListTagsForResource

$result = $client->listTagsForResource([/* ... */]);
$promise = $client->listTagsForResourceAsync([/* ... */]);

Lists all of the tags that have been added to a resource.

Parameter Syntax

$result = $client->listTagsForResource([
    'resourceArn' => '<string>', // REQUIRED
]);

Parameter Details

Members
resourceArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) associated with the resource you want to list tags on.

Result Syntax

[
    'tags' => ['<string>', ...],
]

Result Details

Members
tags
Required: Yes
Type: Associative array of custom strings keys (TagKey) to strings

A map of objects specifying each key name and value.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

ValidationException:

The input fails to satisfy the specified constraints.

PreviewPrivacyImpact

$result = $client->previewPrivacyImpact([/* ... */]);
$promise = $client->previewPrivacyImpactAsync([/* ... */]);

An estimate of the number of aggregation functions that the member who can query can run given epsilon and noise parameters.

Parameter Syntax

$result = $client->previewPrivacyImpact([
    'membershipIdentifier' => '<string>', // REQUIRED
    'parameters' => [ // REQUIRED
        'differentialPrivacy' => [
            'epsilon' => <integer>, // REQUIRED
            'usersNoisePerQuery' => <integer>, // REQUIRED
        ],
    ],
]);

Parameter Details

Members
membershipIdentifier
Required: Yes
Type: string

A unique identifier for one of your memberships for a collaboration. Accepts a membership ID.

parameters
Required: Yes
Type: PreviewPrivacyImpactParametersInput structure

Specifies the desired epsilon and noise parameters to preview.

Result Syntax

[
    'privacyImpact' => [
        'differentialPrivacy' => [
            'aggregations' => [
                [
                    'maxCount' => <integer>,
                    'type' => 'AVG|COUNT|COUNT_DISTINCT|SUM|STDDEV',
                ],
                // ...
            ],
        ],
    ],
]

Result Details

Members
privacyImpact
Required: Yes
Type: PrivacyImpact structure

An estimate of the number of aggregation functions that the member who can query can run given the epsilon and noise parameters. This does not change the privacy budget.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

StartProtectedQuery

$result = $client->startProtectedQuery([/* ... */]);
$promise = $client->startProtectedQueryAsync([/* ... */]);

Creates a protected query that is started by Clean Rooms.

Parameter Syntax

$result = $client->startProtectedQuery([
    'membershipIdentifier' => '<string>', // REQUIRED
    'resultConfiguration' => [
        'outputConfiguration' => [ // REQUIRED
            's3' => [
                'bucket' => '<string>', // REQUIRED
                'keyPrefix' => '<string>',
                'resultFormat' => 'CSV|PARQUET', // REQUIRED
            ],
        ],
    ],
    'sqlParameters' => [ // REQUIRED
        'analysisTemplateArn' => '<string>',
        'parameters' => ['<string>', ...],
        'queryString' => '<string>',
    ],
    'type' => 'SQL', // REQUIRED
]);

Parameter Details

Members
membershipIdentifier
Required: Yes
Type: string

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

resultConfiguration

The details needed to write the query results.

sqlParameters
Required: Yes
Type: ProtectedQuerySQLParameters structure

The protected SQL query parameters.

type
Required: Yes
Type: string

The type of the protected query to be started.

Result Syntax

[
    'protectedQuery' => [
        'createTime' => <DateTime>,
        'differentialPrivacy' => [
            'sensitivityParameters' => [
                [
                    'aggregationExpression' => '<string>',
                    'aggregationType' => 'AVG|COUNT|COUNT_DISTINCT|SUM|STDDEV',
                    'maxColumnValue' => <float>,
                    'minColumnValue' => <float>,
                    'userContributionLimit' => <integer>,
                ],
                // ...
            ],
        ],
        'error' => [
            'code' => '<string>',
            'message' => '<string>',
        ],
        'id' => '<string>',
        'membershipArn' => '<string>',
        'membershipId' => '<string>',
        'result' => [
            'output' => [
                'memberList' => [
                    [
                        'accountId' => '<string>',
                    ],
                    // ...
                ],
                's3' => [
                    'location' => '<string>',
                ],
            ],
        ],
        'resultConfiguration' => [
            'outputConfiguration' => [
                's3' => [
                    'bucket' => '<string>',
                    'keyPrefix' => '<string>',
                    'resultFormat' => 'CSV|PARQUET',
                ],
            ],
        ],
        'sqlParameters' => [
            'analysisTemplateArn' => '<string>',
            'parameters' => ['<string>', ...],
            'queryString' => '<string>',
        ],
        'statistics' => [
            'totalDurationInMillis' => <integer>,
        ],
        'status' => 'SUBMITTED|STARTED|CANCELLED|CANCELLING|FAILED|SUCCESS|TIMED_OUT',
    ],
]

Result Details

Members
protectedQuery
Required: Yes
Type: ProtectedQuery structure

The protected query.

Errors

ServiceQuotaExceededException:

Request denied because service quota has been exceeded.

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

TagResource

$result = $client->tagResource([/* ... */]);
$promise = $client->tagResourceAsync([/* ... */]);

Tags a resource.

Parameter Syntax

$result = $client->tagResource([
    'resourceArn' => '<string>', // REQUIRED
    'tags' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
resourceArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) associated with the resource you want to tag.

tags
Required: Yes
Type: Associative array of custom strings keys (TagKey) to strings

A map of objects specifying each key name and value.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

ValidationException:

The input fails to satisfy the specified constraints.

UntagResource

$result = $client->untagResource([/* ... */]);
$promise = $client->untagResourceAsync([/* ... */]);

Removes a tag or list of tags from a resource.

Parameter Syntax

$result = $client->untagResource([
    'resourceArn' => '<string>', // REQUIRED
    'tagKeys' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
resourceArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) associated with the resource you want to remove the tag from.

tagKeys
Required: Yes
Type: Array of strings

A list of key names of tags to be removed.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

ValidationException:

The input fails to satisfy the specified constraints.

UpdateAnalysisTemplate

$result = $client->updateAnalysisTemplate([/* ... */]);
$promise = $client->updateAnalysisTemplateAsync([/* ... */]);

Updates the analysis template metadata.

Parameter Syntax

$result = $client->updateAnalysisTemplate([
    'analysisTemplateIdentifier' => '<string>', // REQUIRED
    'description' => '<string>',
    'membershipIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
analysisTemplateIdentifier
Required: Yes
Type: string

The identifier for the analysis template resource.

description
Type: string

A new description for the analysis template.

membershipIdentifier
Required: Yes
Type: string

The identifier for a membership resource.

Result Syntax

[
    'analysisTemplate' => [
        'analysisParameters' => [
            [
                'defaultValue' => '<string>',
                'name' => '<string>',
                'type' => 'SMALLINT|INTEGER|BIGINT|DECIMAL|REAL|DOUBLE_PRECISION|BOOLEAN|CHAR|VARCHAR|DATE|TIMESTAMP|TIMESTAMPTZ|TIME|TIMETZ|VARBYTE',
            ],
            // ...
        ],
        'arn' => '<string>',
        'collaborationArn' => '<string>',
        'collaborationId' => '<string>',
        'createTime' => <DateTime>,
        'description' => '<string>',
        'format' => 'SQL',
        'id' => '<string>',
        'membershipArn' => '<string>',
        'membershipId' => '<string>',
        'name' => '<string>',
        'schema' => [
            'referencedTables' => ['<string>', ...],
        ],
        'source' => [
            'text' => '<string>',
        ],
        'updateTime' => <DateTime>,
        'validations' => [
            [
                'reasons' => [
                    [
                        'message' => '<string>',
                    ],
                    // ...
                ],
                'status' => 'VALID|INVALID|UNABLE_TO_VALIDATE',
                'type' => 'DIFFERENTIAL_PRIVACY',
            ],
            // ...
        ],
    ],
]

Result Details

Members
analysisTemplate
Required: Yes
Type: AnalysisTemplate structure

The analysis template.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

UpdateCollaboration

$result = $client->updateCollaboration([/* ... */]);
$promise = $client->updateCollaborationAsync([/* ... */]);

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

Parameter Syntax

$result = $client->updateCollaboration([
    'collaborationIdentifier' => '<string>', // REQUIRED
    'description' => '<string>',
    'name' => '<string>',
]);

Parameter Details

Members
collaborationIdentifier
Required: Yes
Type: string

The identifier for the collaboration.

description
Type: string

A description of the collaboration.

name
Type: string

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

Result Syntax

[
    'collaboration' => [
        'arn' => '<string>',
        'createTime' => <DateTime>,
        'creatorAccountId' => '<string>',
        'creatorDisplayName' => '<string>',
        'dataEncryptionMetadata' => [
            'allowCleartext' => true || false,
            'allowDuplicates' => true || false,
            'allowJoinsOnColumnsWithDifferentNames' => true || false,
            'preserveNulls' => true || false,
        ],
        'description' => '<string>',
        'id' => '<string>',
        'memberStatus' => 'INVITED|ACTIVE|LEFT|REMOVED',
        'membershipArn' => '<string>',
        'membershipId' => '<string>',
        'name' => '<string>',
        'queryLogStatus' => 'ENABLED|DISABLED',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
collaboration
Required: Yes
Type: Collaboration structure

The entire collaboration that has been updated.

Errors

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

UpdateConfiguredAudienceModelAssociation

$result = $client->updateConfiguredAudienceModelAssociation([/* ... */]);
$promise = $client->updateConfiguredAudienceModelAssociationAsync([/* ... */]);

Provides the details necessary to update a configured audience model association.

Parameter Syntax

$result = $client->updateConfiguredAudienceModelAssociation([
    'configuredAudienceModelAssociationIdentifier' => '<string>', // REQUIRED
    'description' => '<string>',
    'membershipIdentifier' => '<string>', // REQUIRED
    'name' => '<string>',
]);

Parameter Details

Members
configuredAudienceModelAssociationIdentifier
Required: Yes
Type: string

A unique identifier for the configured audience model association that you want to update.

description
Type: string

A new description for the configured audience model association.

membershipIdentifier
Required: Yes
Type: string

A unique identifier of the membership that contains the configured audience model association that you want to update.

name
Type: string

A new name for the configured audience model association.

Result Syntax

[
    'configuredAudienceModelAssociation' => [
        'arn' => '<string>',
        'collaborationArn' => '<string>',
        'collaborationId' => '<string>',
        'configuredAudienceModelArn' => '<string>',
        'createTime' => <DateTime>,
        'description' => '<string>',
        'id' => '<string>',
        'manageResourcePolicies' => true || false,
        'membershipArn' => '<string>',
        'membershipId' => '<string>',
        'name' => '<string>',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
configuredAudienceModelAssociation
Required: Yes
Type: ConfiguredAudienceModelAssociation structure

Details about the configured audience model association that you updated.

Errors

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

UpdateConfiguredTable

$result = $client->updateConfiguredTable([/* ... */]);
$promise = $client->updateConfiguredTableAsync([/* ... */]);

Updates a configured table.

Parameter Syntax

$result = $client->updateConfiguredTable([
    'configuredTableIdentifier' => '<string>', // REQUIRED
    'description' => '<string>',
    'name' => '<string>',
]);

Parameter Details

Members
configuredTableIdentifier
Required: Yes
Type: string

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

description
Type: string

A new description for the configured table.

name
Type: string

A new name for the configured table.

Result Syntax

[
    'configuredTable' => [
        'allowedColumns' => ['<string>', ...],
        'analysisMethod' => 'DIRECT_QUERY',
        'analysisRuleTypes' => ['<string>', ...],
        'arn' => '<string>',
        'createTime' => <DateTime>,
        'description' => '<string>',
        'id' => '<string>',
        'name' => '<string>',
        'tableReference' => [
            'glue' => [
                'databaseName' => '<string>',
                'tableName' => '<string>',
            ],
        ],
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
configuredTable
Required: Yes
Type: ConfiguredTable structure

The updated configured table.

Errors

ConflictException:

Updating or deleting a resource can cause an inconsistent state.

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

UpdateConfiguredTableAnalysisRule

$result = $client->updateConfiguredTableAnalysisRule([/* ... */]);
$promise = $client->updateConfiguredTableAnalysisRuleAsync([/* ... */]);

Updates a configured table analysis rule.

Parameter Syntax

$result = $client->updateConfiguredTableAnalysisRule([
    'analysisRulePolicy' => [ // REQUIRED
        'v1' => [
            'aggregation' => [
                'aggregateColumns' => [ // REQUIRED
                    [
                        'columnNames' => ['<string>', ...], // REQUIRED
                        'function' => 'SUM|SUM_DISTINCT|COUNT|COUNT_DISTINCT|AVG', // REQUIRED
                    ],
                    // ...
                ],
                'allowedJoinOperators' => ['<string>', ...],
                'dimensionColumns' => ['<string>', ...], // REQUIRED
                'joinColumns' => ['<string>', ...], // REQUIRED
                'joinRequired' => 'QUERY_RUNNER',
                'outputConstraints' => [ // REQUIRED
                    [
                        'columnName' => '<string>', // REQUIRED
                        'minimum' => <integer>, // REQUIRED
                        'type' => 'COUNT_DISTINCT', // REQUIRED
                    ],
                    // ...
                ],
                'scalarFunctions' => ['<string>', ...], // REQUIRED
            ],
            'custom' => [
                'allowedAnalyses' => ['<string>', ...], // REQUIRED
                'allowedAnalysisProviders' => ['<string>', ...],
                'differentialPrivacy' => [
                    'columns' => [ // REQUIRED
                        [
                            'name' => '<string>', // REQUIRED
                        ],
                        // ...
                    ],
                ],
            ],
            'list' => [
                'allowedJoinOperators' => ['<string>', ...],
                'joinColumns' => ['<string>', ...], // REQUIRED
                'listColumns' => ['<string>', ...], // REQUIRED
            ],
        ],
    ],
    'analysisRuleType' => 'AGGREGATION|LIST|CUSTOM', // REQUIRED
    'configuredTableIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
analysisRulePolicy
Required: Yes
Type: ConfiguredTableAnalysisRulePolicy structure

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

analysisRuleType
Required: Yes
Type: string

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

configuredTableIdentifier
Required: Yes
Type: string

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

Result Syntax

[
    'analysisRule' => [
        'configuredTableArn' => '<string>',
        'configuredTableId' => '<string>',
        'createTime' => <DateTime>,
        'policy' => [
            'v1' => [
                'aggregation' => [
                    'aggregateColumns' => [
                        [
                            'columnNames' => ['<string>', ...],
                            'function' => 'SUM|SUM_DISTINCT|COUNT|COUNT_DISTINCT|AVG',
                        ],
                        // ...
                    ],
                    'allowedJoinOperators' => ['<string>', ...],
                    'dimensionColumns' => ['<string>', ...],
                    'joinColumns' => ['<string>', ...],
                    'joinRequired' => 'QUERY_RUNNER',
                    'outputConstraints' => [
                        [
                            'columnName' => '<string>',
                            'minimum' => <integer>,
                            'type' => 'COUNT_DISTINCT',
                        ],
                        // ...
                    ],
                    'scalarFunctions' => ['<string>', ...],
                ],
                'custom' => [
                    'allowedAnalyses' => ['<string>', ...],
                    'allowedAnalysisProviders' => ['<string>', ...],
                    'differentialPrivacy' => [
                        'columns' => [
                            [
                                'name' => '<string>',
                            ],
                            // ...
                        ],
                    ],
                ],
                'list' => [
                    'allowedJoinOperators' => ['<string>', ...],
                    'joinColumns' => ['<string>', ...],
                    'listColumns' => ['<string>', ...],
                ],
            ],
        ],
        'type' => 'AGGREGATION|LIST|CUSTOM',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
analysisRule
Required: Yes
Type: ConfiguredTableAnalysisRule structure

The entire updated analysis rule.

Errors

ConflictException:

Updating or deleting a resource can cause an inconsistent state.

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

UpdateConfiguredTableAssociation

$result = $client->updateConfiguredTableAssociation([/* ... */]);
$promise = $client->updateConfiguredTableAssociationAsync([/* ... */]);

Updates a configured table association.

Parameter Syntax

$result = $client->updateConfiguredTableAssociation([
    'configuredTableAssociationIdentifier' => '<string>', // REQUIRED
    'description' => '<string>',
    'membershipIdentifier' => '<string>', // REQUIRED
    'roleArn' => '<string>',
]);

Parameter Details

Members
configuredTableAssociationIdentifier
Required: Yes
Type: string

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

description
Type: string

A new description for the configured table association.

membershipIdentifier
Required: Yes
Type: string

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

roleArn
Type: string

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

Result Syntax

[
    'configuredTableAssociation' => [
        'arn' => '<string>',
        'configuredTableArn' => '<string>',
        'configuredTableId' => '<string>',
        'createTime' => <DateTime>,
        'description' => '<string>',
        'id' => '<string>',
        'membershipArn' => '<string>',
        'membershipId' => '<string>',
        'name' => '<string>',
        'roleArn' => '<string>',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
configuredTableAssociation
Required: Yes
Type: ConfiguredTableAssociation structure

The entire updated configured table association.

Errors

ConflictException:

Updating or deleting a resource can cause an inconsistent state.

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

UpdateMembership

$result = $client->updateMembership([/* ... */]);
$promise = $client->updateMembershipAsync([/* ... */]);

Updates a membership.

Parameter Syntax

$result = $client->updateMembership([
    'defaultResultConfiguration' => [
        'outputConfiguration' => [ // REQUIRED
            's3' => [
                'bucket' => '<string>', // REQUIRED
                'keyPrefix' => '<string>',
                'resultFormat' => 'CSV|PARQUET', // REQUIRED
            ],
        ],
        'roleArn' => '<string>',
    ],
    'membershipIdentifier' => '<string>', // REQUIRED
    'queryLogStatus' => 'ENABLED|DISABLED',
]);

Parameter Details

Members
defaultResultConfiguration

The default protected query result configuration as specified by the member who can receive results.

membershipIdentifier
Required: Yes
Type: string

The unique identifier of the membership.

queryLogStatus
Type: string

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

Result Syntax

[
    'membership' => [
        'arn' => '<string>',
        'collaborationArn' => '<string>',
        'collaborationCreatorAccountId' => '<string>',
        'collaborationCreatorDisplayName' => '<string>',
        'collaborationId' => '<string>',
        'collaborationName' => '<string>',
        'createTime' => <DateTime>,
        'defaultResultConfiguration' => [
            'outputConfiguration' => [
                's3' => [
                    'bucket' => '<string>',
                    'keyPrefix' => '<string>',
                    'resultFormat' => 'CSV|PARQUET',
                ],
            ],
            'roleArn' => '<string>',
        ],
        'id' => '<string>',
        'memberAbilities' => ['<string>', ...],
        'paymentConfiguration' => [
            'queryCompute' => [
                'isResponsible' => true || false,
            ],
        ],
        'queryLogStatus' => 'ENABLED|DISABLED',
        'status' => 'ACTIVE|REMOVED|COLLABORATION_DELETED',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
membership
Required: Yes
Type: Membership structure

The membership object.

Errors

ConflictException:

Updating or deleting a resource can cause an inconsistent state.

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

UpdatePrivacyBudgetTemplate

$result = $client->updatePrivacyBudgetTemplate([/* ... */]);
$promise = $client->updatePrivacyBudgetTemplateAsync([/* ... */]);

Updates the privacy budget template for the specified membership.

Parameter Syntax

$result = $client->updatePrivacyBudgetTemplate([
    'membershipIdentifier' => '<string>', // REQUIRED
    'parameters' => [
        'differentialPrivacy' => [
            'epsilon' => <integer>,
            'usersNoisePerQuery' => <integer>,
        ],
    ],
    'privacyBudgetTemplateIdentifier' => '<string>', // REQUIRED
    'privacyBudgetType' => 'DIFFERENTIAL_PRIVACY', // REQUIRED
]);

Parameter Details

Members
membershipIdentifier
Required: Yes
Type: string

A unique identifier for one of your memberships for a collaboration. The privacy budget template is updated in the collaboration that this membership belongs to. Accepts a membership ID.

parameters

Specifies the epsilon and noise parameters for the privacy budget template.

privacyBudgetTemplateIdentifier
Required: Yes
Type: string

A unique identifier for your privacy budget template that you want to update.

privacyBudgetType
Required: Yes
Type: string

Specifies the type of the privacy budget template.

Result Syntax

[
    'privacyBudgetTemplate' => [
        'arn' => '<string>',
        'autoRefresh' => 'CALENDAR_MONTH|NONE',
        'collaborationArn' => '<string>',
        'collaborationId' => '<string>',
        'createTime' => <DateTime>,
        'id' => '<string>',
        'membershipArn' => '<string>',
        'membershipId' => '<string>',
        'parameters' => [
            'differentialPrivacy' => [
                'epsilon' => <integer>,
                'usersNoisePerQuery' => <integer>,
            ],
        ],
        'privacyBudgetType' => 'DIFFERENTIAL_PRIVACY',
        'updateTime' => <DateTime>,
    ],
]

Result Details

Members
privacyBudgetTemplate
Required: Yes
Type: PrivacyBudgetTemplate structure

Summary of the privacy budget template.

Errors

ConflictException:

Updating or deleting a resource can cause an inconsistent state.

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

UpdateProtectedQuery

$result = $client->updateProtectedQuery([/* ... */]);
$promise = $client->updateProtectedQueryAsync([/* ... */]);

Updates the processing of a currently running query.

Parameter Syntax

$result = $client->updateProtectedQuery([
    'membershipIdentifier' => '<string>', // REQUIRED
    'protectedQueryIdentifier' => '<string>', // REQUIRED
    'targetStatus' => 'CANCELLED', // REQUIRED
]);

Parameter Details

Members
membershipIdentifier
Required: Yes
Type: string

The identifier for a member of a protected query instance.

protectedQueryIdentifier
Required: Yes
Type: string

The identifier for a protected query instance.

targetStatus
Required: Yes
Type: string

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

Result Syntax

[
    'protectedQuery' => [
        'createTime' => <DateTime>,
        'differentialPrivacy' => [
            'sensitivityParameters' => [
                [
                    'aggregationExpression' => '<string>',
                    'aggregationType' => 'AVG|COUNT|COUNT_DISTINCT|SUM|STDDEV',
                    'maxColumnValue' => <float>,
                    'minColumnValue' => <float>,
                    'userContributionLimit' => <integer>,
                ],
                // ...
            ],
        ],
        'error' => [
            'code' => '<string>',
            'message' => '<string>',
        ],
        'id' => '<string>',
        'membershipArn' => '<string>',
        'membershipId' => '<string>',
        'result' => [
            'output' => [
                'memberList' => [
                    [
                        'accountId' => '<string>',
                    ],
                    // ...
                ],
                's3' => [
                    'location' => '<string>',
                ],
            ],
        ],
        'resultConfiguration' => [
            'outputConfiguration' => [
                's3' => [
                    'bucket' => '<string>',
                    'keyPrefix' => '<string>',
                    'resultFormat' => 'CSV|PARQUET',
                ],
            ],
        ],
        'sqlParameters' => [
            'analysisTemplateArn' => '<string>',
            'parameters' => ['<string>', ...],
            'queryString' => '<string>',
        ],
        'statistics' => [
            'totalDurationInMillis' => <integer>,
        ],
        'status' => 'SUBMITTED|STARTED|CANCELLED|CANCELLING|FAILED|SUCCESS|TIMED_OUT',
    ],
]

Result Details

Members
protectedQuery
Required: Yes
Type: ProtectedQuery structure

The protected query output.

Errors

ConflictException:

Updating or deleting a resource can cause an inconsistent state.

ResourceNotFoundException:

Request references a resource which does not exist.

InternalServerException:

Unexpected error during processing of request.

ValidationException:

The input fails to satisfy the specified constraints.

ThrottlingException:

Request was denied due to request throttling.

AccessDeniedException:

Caller does not have sufficient access to perform this action.

Shapes

AccessDeniedException

Description

Caller does not have sufficient access to perform this action.

Members
message
Type: string
reason
Type: string

A reason code for the exception.

AggregateColumn

Description

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

Members
columnNames
Required: Yes
Type: Array of strings

Column names in configured table of aggregate columns.

function
Required: Yes
Type: string

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

AggregationConstraint

Description

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

Members
columnName
Required: Yes
Type: 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
Required: Yes
Type: int

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
Required: Yes
Type: string

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

AnalysisParameter

Description

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

Members
defaultValue
Type: 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.

name
Required: Yes
Type: 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
Required: Yes
Type: string

The type of parameter.

AnalysisRule

Description

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

Members
collaborationId
Required: Yes
Type: string

The unique ID for the associated collaboration.

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the analysis rule was created.

name
Required: Yes
Type: string

The name for the analysis rule.

policy
Required: Yes
Type: AnalysisRulePolicy structure

A policy that describes the associated data usage limitations.

type
Required: Yes
Type: string

The type of analysis rule.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the analysis rule was last updated.

AnalysisRuleAggregation

Description

A type of analysis rule that enables query structure and specified queries that produce aggregate statistics.

Members
aggregateColumns
Required: Yes
Type: Array of AggregateColumn structures

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

allowedJoinOperators
Type: Array of strings

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

dimensionColumns
Required: Yes
Type: Array of strings

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

joinColumns
Required: Yes
Type: Array of strings

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

joinRequired
Type: string

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

outputConstraints
Required: Yes
Type: Array of AggregationConstraint structures

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

scalarFunctions
Required: Yes
Type: Array of strings

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

AnalysisRuleCustom

Description

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

Members
allowedAnalyses
Required: Yes
Type: Array of strings

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

allowedAnalysisProviders
Type: Array of strings

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

differentialPrivacy

The differential privacy configuration.

AnalysisRuleList

Description

A type of analysis rule that enables row-level analysis.

Members
allowedJoinOperators
Type: Array of strings

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

joinColumns
Required: Yes
Type: Array of strings

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

listColumns
Required: Yes
Type: Array of strings

Columns that can be listed in the output.

AnalysisRulePolicy

Description

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

Members
v1
Type: AnalysisRulePolicyV1 structure

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

AnalysisRulePolicyV1

Description

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

Members
aggregation
Type: AnalysisRuleAggregation structure

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

custom
Type: AnalysisRuleCustom structure

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

list
Type: AnalysisRuleList structure

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

AnalysisSchema

Description

A relation within an analysis.

Members
referencedTables
Type: Array of strings

The tables referenced in the analysis schema.

AnalysisSource

Description

The structure that defines the body of the analysis template.

Members
text
Type: string

The query text.

AnalysisTemplate

Description

The analysis template.

Members
analysisParameters
Type: Array of AnalysisParameter structures

The parameters of the analysis template.

arn
Required: Yes
Type: string

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

collaborationArn
Required: Yes
Type: string

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

collaborationId
Required: Yes
Type: string

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

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time that the analysis template was created.

description
Type: string

The description of the analysis template.

format
Required: Yes
Type: string

The format of the analysis template.

id
Required: Yes
Type: string

The identifier for the analysis template.

membershipArn
Required: Yes
Type: string

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

membershipId
Required: Yes
Type: string

The identifier of a member who created the analysis template.

name
Required: Yes
Type: string

The name of the analysis template.

schema
Required: Yes
Type: AnalysisSchema structure

The entire schema object.

source
Required: Yes
Type: AnalysisSource structure

The source of the analysis template.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time that the analysis template was last updated.

validations
Type: Array of AnalysisTemplateValidationStatusDetail structures

Information about the validations performed on the analysis template.

AnalysisTemplateSummary

Description

The metadata of the analysis template.

Members
arn
Required: Yes
Type: string

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

collaborationArn
Required: Yes
Type: string

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

collaborationId
Required: Yes
Type: string

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

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time that the analysis template summary was created.

description
Type: string

The description of the analysis template.

id
Required: Yes
Type: string

The identifier of the analysis template.

membershipArn
Required: Yes
Type: string

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

membershipId
Required: Yes
Type: string

The identifier for a membership resource.

name
Required: Yes
Type: string

The name of the analysis template.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time that the analysis template summary was last updated.

AnalysisTemplateValidationStatusDetail

Description

The status details of the analysis template validation. Clean Rooms Differential Privacy uses a general-purpose query structure to support complex SQL queries and validates whether an analysis template fits that general-purpose query structure. Validation is performed when analysis templates are created and fetched. Because analysis templates are immutable by design, we recommend that you create analysis templates after you associate the configured tables with their analysis rule to your collaboration.

For more information, see https://docs.aws.amazon.com/clean-rooms/latest/userguide/analysis-rules-custom.html#custom-diff-privacy.

Members
reasons
Type: Array of AnalysisTemplateValidationStatusReason structures

The reasons for the validation results.

status
Required: Yes
Type: string

The status of the validation.

type
Required: Yes
Type: string

The type of validation that was performed.

AnalysisTemplateValidationStatusReason

Description

The reasons for the validation results.

Members
message
Required: Yes
Type: string

The validation message.

BatchGetCollaborationAnalysisTemplateError

Description

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

Members
arn
Required: Yes
Type: string

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

code
Required: Yes
Type: string

An error code for the error.

message
Required: Yes
Type: string

A description of why the call failed.

BatchGetSchemaAnalysisRuleError

Description

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

Members
code
Required: Yes
Type: string

An error code for the error.

message
Required: Yes
Type: string

A description of why the call failed.

name
Required: Yes
Type: string

An error name for the error.

type
Required: Yes
Type: string

The analysis rule type.

BatchGetSchemaError

Description

An error describing why a schema could not be fetched.

Members
code
Required: Yes
Type: string

An error code for the error.

message
Required: Yes
Type: string

An error message for the error.

name
Required: Yes
Type: string

An error name for the error.

Collaboration

Description

The multi-party data share environment. The collaboration contains metadata about its purpose and participants.

Members
arn
Required: Yes
Type: string

The unique ARN for the collaboration.

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the collaboration was created.

creatorAccountId
Required: Yes
Type: string

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

creatorDisplayName
Required: Yes
Type: string

A display name of the collaboration creator.

dataEncryptionMetadata
Type: DataEncryptionMetadata structure

The settings for client-side encryption for cryptographic computing.

description
Type: string

A description of the collaboration provided by the collaboration owner.

id
Required: Yes
Type: string

The unique ID for the collaboration.

memberStatus
Required: Yes
Type: string

The status of a member in a collaboration.

membershipArn
Type: string

The unique ARN for your membership within the collaboration.

membershipId
Type: string

The unique ID for your membership within the collaboration.

name
Required: Yes
Type: string

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

queryLogStatus
Required: Yes
Type: string

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

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the collaboration metadata was last updated.

CollaborationAnalysisTemplate

Description

The analysis template within a collaboration.

Members
analysisParameters
Type: Array of AnalysisParameter structures

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

arn
Required: Yes
Type: string

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

collaborationArn
Required: Yes
Type: string

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

collaborationId
Required: Yes
Type: string

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

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

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

creatorAccountId
Required: Yes
Type: string

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

description
Type: string

The description of the analysis template.

format
Required: Yes
Type: string

The format of the analysis template in the collaboration.

id
Required: Yes
Type: string

The identifier of the analysis template.

name
Required: Yes
Type: string

The name of the analysis template.

schema
Required: Yes
Type: AnalysisSchema structure

The entire schema object.

source
Required: Yes
Type: AnalysisSource structure

The source of the analysis template within a collaboration.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

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

validations
Type: Array of AnalysisTemplateValidationStatusDetail structures

The validations that were performed.

CollaborationAnalysisTemplateSummary

Description

The metadata of the analysis template within a collaboration.

Members
arn
Required: Yes
Type: string

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

collaborationArn
Required: Yes
Type: string

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

collaborationId
Required: Yes
Type: string

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

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

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

creatorAccountId
Required: Yes
Type: string

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

description
Type: string

The description of the analysis template.

id
Required: Yes
Type: string

The identifier of the analysis template.

name
Required: Yes
Type: string

The name of the analysis template.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

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

CollaborationConfiguredAudienceModelAssociation

Description

The configured audience model association within a collaboration.

Members
arn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the configured audience model association.

collaborationArn
Required: Yes
Type: string

The unique ARN for the configured audience model's associated collaboration.

collaborationId
Required: Yes
Type: string

A unique identifier for the collaboration that the configured audience model associations belong to. Accepts collaboration ID.

configuredAudienceModelArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the configure audience model.

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time at which the configured audience model association was created.

creatorAccountId
Required: Yes
Type: string

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

description
Type: string

The description of the configured audience model association.

id
Required: Yes
Type: string

The identifier of the configured audience model association.

name
Required: Yes
Type: string

The name of the configured audience model association.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The most recent time at which the configured audience model association was updated.

CollaborationConfiguredAudienceModelAssociationSummary

Description

A summary of the configured audience model association in the collaboration.

Members
arn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the configured audience model association.

collaborationArn
Required: Yes
Type: string

The unique ARN for the configured audience model's associated collaboration.

collaborationId
Required: Yes
Type: string

A unique identifier for the collaboration that the configured audience model associations belong to. Accepts collaboration ID.

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time at which the configured audience model association was created.

creatorAccountId
Required: Yes
Type: string

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

description
Type: string

The description of the configured audience model association.

id
Required: Yes
Type: string

The identifier of the configured audience model association.

name
Required: Yes
Type: string

The name of the configured audience model association.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The most recent time at which the configured audience model association was updated.

CollaborationPrivacyBudgetSummary

Description

A summary of the collaboration privacy budgets. This summary includes the collaboration information, creation information, epsilon provided, and utility in terms of aggregations.

Members
budget
Required: Yes
Type: PrivacyBudget structure

The includes epsilon provided and utility in terms of aggregations.

collaborationArn
Required: Yes
Type: string

The ARN of the collaboration that includes this privacy budget.

collaborationId
Required: Yes
Type: string

The unique identifier of the collaboration that includes this privacy budget.

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time at which the privacy budget was created.

creatorAccountId
Required: Yes
Type: string

The unique identifier of the account that created this privacy budget.

id
Required: Yes
Type: string

The unique identifier of the collaboration privacy budget.

privacyBudgetTemplateArn
Required: Yes
Type: string

The ARN of the collaboration privacy budget template.

privacyBudgetTemplateId
Required: Yes
Type: string

The unique identifier of the collaboration privacy budget template.

type
Required: Yes
Type: string

The type of privacy budget template.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The most recent time at which the privacy budget was updated.

CollaborationPrivacyBudgetTemplate

Description

An array that specifies the information for a collaboration's privacy budget template.

Members
arn
Required: Yes
Type: string

The ARN of the collaboration privacy budget template.

autoRefresh
Required: Yes
Type: string

How often the privacy budget refreshes.

If you plan to regularly bring new data into the collaboration, use CALENDAR_MONTH to automatically get a new privacy budget for the collaboration every calendar month. Choosing this option allows arbitrary amounts of information to be revealed about rows of the data when repeatedly queried across refreshes. Avoid choosing this if the same rows will be repeatedly queried between privacy budget refreshes.

collaborationArn
Required: Yes
Type: string

The ARN of the collaboration that includes this collaboration privacy budget template.

collaborationId
Required: Yes
Type: string

The unique identifier of the collaboration that includes this collaboration privacy budget template.

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time at which the collaboration privacy budget template was created.

creatorAccountId
Required: Yes
Type: string

The unique identifier of the account that created this collaboration privacy budget template.

id
Required: Yes
Type: string

The unique identifier of the collaboration privacy budget template.

parameters
Required: Yes
Type: PrivacyBudgetTemplateParametersOutput structure

Specifies the epsilon and noise parameters for the privacy budget template.

privacyBudgetType
Required: Yes
Type: string

The type of privacy budget template.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The most recent time at which the collaboration privacy budget template was updated.

CollaborationPrivacyBudgetTemplateSummary

Description

A summary of the collaboration's privacy budget template. This summary includes information about who created the privacy budget template and what collaborations it belongs to.

Members
arn
Required: Yes
Type: string

The ARN of the collaboration privacy budget template.

collaborationArn
Required: Yes
Type: string

The ARN of the collaboration that contains this collaboration privacy budget template.

collaborationId
Required: Yes
Type: string

The unique identifier of the collaboration that contains this collaboration privacy budget template.

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time at which the collaboration privacy budget template was created.

creatorAccountId
Required: Yes
Type: string

The unique identifier of the account that created this collaboration privacy budget template.

id
Required: Yes
Type: string

The unique identifier of the collaboration privacy budget template.

privacyBudgetType
Required: Yes
Type: string

The type of the privacy budget template.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The most recent time at which the collaboration privacy budget template was updated.

CollaborationSummary

Description

The metadata of the collaboration.

Members
arn
Required: Yes
Type: string

The ARN of the collaboration.

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the collaboration was created.

creatorAccountId
Required: Yes
Type: string

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

creatorDisplayName
Required: Yes
Type: string

The display name of the collaboration creator.

id
Required: Yes
Type: string

The identifier for the collaboration.

memberStatus
Required: Yes
Type: string

The status of a member in a collaboration.

membershipArn
Type: string

The ARN of a member in a collaboration.

membershipId
Type: string

The identifier of a member in a collaboration.

name
Required: Yes
Type: string

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

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the collaboration metadata was last updated.

Column

Description

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

Members
name
Required: Yes
Type: string

The name of the column.

type
Required: Yes
Type: string

The type of the column.

ConfiguredAudienceModelAssociation

Description

Details about the configured audience model association.

Members
arn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the configured audience model association.

collaborationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the collaboration that contains this configured audience model association.

collaborationId
Required: Yes
Type: string

A unique identifier of the collaboration that contains this configured audience model association.

configuredAudienceModelArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the configured audience model that was used for this configured audience model association.

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time at which the configured audience model association was created.

description
Type: string

The description of the configured audience model association.

id
Required: Yes
Type: string

A unique identifier of the configured audience model association.

manageResourcePolicies
Required: Yes
Type: boolean

When TRUE, indicates that the resource policy for the configured audience model resource being associated is configured for Clean Rooms to manage permissions related to the given collaboration. When FALSE, indicates that the configured audience model resource owner will manage permissions related to the given collaboration.

membershipArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the membership that contains this configured audience model association.

membershipId
Required: Yes
Type: string

A unique identifier for the membership that contains this configured audience model association.

name
Required: Yes
Type: string

The name of the configured audience model association.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The most recent time at which the configured audience model association was updated.

ConfiguredAudienceModelAssociationSummary

Description

A summary of the configured audience model association.

Members
arn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the configured audience model association.

collaborationArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the collaboration that contains the configured audience model association.

collaborationId
Required: Yes
Type: string

A unique identifier of the collaboration that configured audience model is associated with.

configuredAudienceModelArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the configured audience model that was used for this configured audience model association.

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time at which the configured audience model association was created.

description
Type: string

The description of the configured audience model association.

id
Required: Yes
Type: string

A unique identifier of the configured audience model association.

membershipArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the membership that contains the configured audience model association.

membershipId
Required: Yes
Type: string

A unique identifier of the membership that contains the configured audience model association.

name
Required: Yes
Type: string

The name of the configured audience model association.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The most recent time at which the configured audience model association was updated.

ConfiguredTable

Description

A table that has been configured for use in a collaboration.

Members
allowedColumns
Required: Yes
Type: Array of strings

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

analysisMethod
Required: Yes
Type: string

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

analysisRuleTypes
Required: Yes
Type: Array of strings

The types of analysis rules associated with this configured table. Currently, only one analysis rule may be associated with a configured table.

arn
Required: Yes
Type: string

The unique ARN for the configured table.

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the configured table was created.

description
Type: string

A description for the configured table.

id
Required: Yes
Type: string

The unique ID for the configured table.

name
Required: Yes
Type: string

A name for the configured table.

tableReference
Required: Yes
Type: TableReference structure

The Glue table that this configured table represents.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the configured table was last updated

ConfiguredTableAnalysisRule

Description

A configured table analysis rule, which limits how data for this table can be used.

Members
configuredTableArn
Required: Yes
Type: string

The unique ARN for the configured table.

configuredTableId
Required: Yes
Type: string

The unique ID for the configured table.

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the configured table analysis rule was created.

policy
Required: Yes
Type: ConfiguredTableAnalysisRulePolicy structure

The policy that controls SQL query rules.

type
Required: Yes
Type: string

The type of configured table analysis rule.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the configured table analysis rule was last updated.

ConfiguredTableAnalysisRulePolicy

Description

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

Members
v1

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

ConfiguredTableAnalysisRulePolicyV1

Description

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

Members
aggregation
Type: AnalysisRuleAggregation structure

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

custom
Type: AnalysisRuleCustom structure

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

list
Type: AnalysisRuleList structure

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

ConfiguredTableAssociation

Description

A configured table association links a configured table to a collaboration.

Members
arn
Required: Yes
Type: string

The unique ARN for the configured table association.

configuredTableArn
Required: Yes
Type: string

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

configuredTableId
Required: Yes
Type: string

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

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the configured table association was created.

description
Type: string

A description of the configured table association.

id
Required: Yes
Type: string

The unique ID for the configured table association.

membershipArn
Required: Yes
Type: string

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

membershipId
Required: Yes
Type: string

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

name
Required: Yes
Type: string

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

roleArn
Required: Yes
Type: string

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

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the configured table association was last updated.

ConfiguredTableAssociationSummary

Description

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

Members
arn
Required: Yes
Type: string

The unique ARN for the configured table association.

configuredTableId
Required: Yes
Type: string

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

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the configured table association was created.

id
Required: Yes
Type: string

The unique ID for the configured table association.

membershipArn
Required: Yes
Type: string

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

membershipId
Required: Yes
Type: string

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

name
Required: Yes
Type: string

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

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the configured table association was last updated.

ConfiguredTableSummary

Description

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

Members
analysisMethod
Required: Yes
Type: string

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

analysisRuleTypes
Required: Yes
Type: Array of strings

The types of analysis rules associated with this configured table.

arn
Required: Yes
Type: string

The unique ARN of the configured table.

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the configured table was created.

id
Required: Yes
Type: string

The unique ID of the configured table.

name
Required: Yes
Type: string

The name of the configured table.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the configured table was last updated.

ConflictException

Description

Updating or deleting a resource can cause an inconsistent state.

Members
message
Type: string
reason
Type: string

A reason code for the exception.

resourceId
Type: string

The ID of the conflicting resource.

resourceType
Type: string

The type of the conflicting resource.

DataEncryptionMetadata

Description

The settings for client-side encryption for cryptographic computing.

Members
allowCleartext
Required: Yes
Type: boolean

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

allowDuplicates
Required: Yes
Type: boolean

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

allowJoinsOnColumnsWithDifferentNames
Required: Yes
Type: 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
Required: Yes
Type: boolean

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

DifferentialPrivacyColumn

Description

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

Members
name
Required: Yes
Type: string

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

DifferentialPrivacyConfiguration

Description

Specifies the unique identifier for your users.

Members
columns
Required: Yes
Type: Array of DifferentialPrivacyColumn structures

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

DifferentialPrivacyParameters

Description

An array that contains the sensitivity parameters.

Members
sensitivityParameters
Required: Yes
Type: Array of DifferentialPrivacySensitivityParameters structures

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

DifferentialPrivacyPreviewAggregation

Description

Provides an estimate of the number of aggregation functions that the member who can query can run given the epsilon and noise parameters.

Members
maxCount
Required: Yes
Type: int

The maximum number of aggregations that the member who can query can run given the epsilon and noise parameters.

type
Required: Yes
Type: string

The type of aggregation function.

DifferentialPrivacyPreviewParametersInput

Description

The epsilon and noise parameters that you want to preview.

Members
epsilon
Required: Yes
Type: int

The epsilon value that you want to preview.

usersNoisePerQuery
Required: Yes
Type: int

Noise added per query is measured in terms of the number of users whose contributions you want to obscure. This value governs the rate at which the privacy budget is depleted.

DifferentialPrivacyPrivacyBudget

Description

Specifies the configured epsilon value and the utility in terms of total aggregations, as well as the remaining aggregations available.

Members
aggregations
Required: Yes
Type: Array of DifferentialPrivacyPrivacyBudgetAggregation structures

This information includes the configured epsilon value and the utility in terms of total aggregations, as well as the remaining aggregations.

epsilon
Required: Yes
Type: int

The epsilon value that you configured.

DifferentialPrivacyPrivacyBudgetAggregation

Description

Information about the total number of aggregations, as well as the remaining aggregations.

Members
maxCount
Required: Yes
Type: int

The maximum number of aggregation functions that you can perform with the given privacy budget.

remainingCount
Required: Yes
Type: int

The remaining number of aggregation functions that can be run with the available privacy budget.

type
Required: Yes
Type: string

The different types of aggregation functions that you can perform.

DifferentialPrivacyPrivacyImpact

Description

Information about the number of aggregation functions that the member who can query can run given the epsilon and noise parameters.

Members
aggregations
Required: Yes
Type: Array of DifferentialPrivacyPreviewAggregation structures

The number of aggregation functions that you can perform.

DifferentialPrivacySensitivityParameters

Description

Provides the sensitivity parameters.

Members
aggregationExpression
Required: Yes
Type: string

The aggregation expression that was run.

aggregationType
Required: Yes
Type: string

The type of aggregation function that was run.

maxColumnValue
Type: float

The upper bound of the aggregation expression.

minColumnValue
Type: float

The lower bound of the aggregation expression.

userContributionLimit
Required: Yes
Type: int

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

DifferentialPrivacyTemplateParametersInput

Description

The epsilon and noise parameter values that you want to use for the differential privacy template.

Members
epsilon
Required: Yes
Type: int

The epsilon value that you want to use.

usersNoisePerQuery
Required: Yes
Type: int

Noise added per query is measured in terms of the number of users whose contributions you want to obscure. This value governs the rate at which the privacy budget is depleted.

DifferentialPrivacyTemplateParametersOutput

Description

The epsilon and noise parameter values that were used for the differential privacy template.

Members
epsilon
Required: Yes
Type: int

The epsilon value that you specified.

usersNoisePerQuery
Required: Yes
Type: int

Noise added per query is measured in terms of the number of users whose contributions you want to obscure. This value governs the rate at which the privacy budget is depleted.

DifferentialPrivacyTemplateUpdateParameters

Description

The epsilon and noise parameter values that you want to update in the differential privacy template.

Members
epsilon
Type: int

The updated epsilon value that you want to use.

usersNoisePerQuery
Type: int

The updated value of noise added per query. It is measured in terms of the number of users whose contributions you want to obscure. This value governs the rate at which the privacy budget is depleted.

GlueTableReference

Description

A reference to a table within an Glue data catalog.

Members
databaseName
Required: Yes
Type: string

The name of the database the Glue table belongs to.

tableName
Required: Yes
Type: string

The name of the Glue table.

InternalServerException

Description

Unexpected error during processing of request.

Members
message
Type: string

MemberSpecification

Description

Basic metadata used to construct a new member.

Members
accountId
Required: Yes
Type: string

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

displayName
Required: Yes
Type: string

The member's display name.

memberAbilities
Required: Yes
Type: Array of strings

The abilities granted to the collaboration member.

paymentConfiguration
Type: PaymentConfiguration structure

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.

MemberSummary

Description

The member object listed by the request.

Members
abilities
Required: Yes
Type: Array of strings

The abilities granted to the collaboration member.

accountId
Required: Yes
Type: string

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

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the member was created.

displayName
Required: Yes
Type: string

The member's display name.

membershipArn
Type: string

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

membershipId
Type: string

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

paymentConfiguration
Required: Yes
Type: PaymentConfiguration structure

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

status
Required: Yes
Type: string

The status of the member.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the member metadata was last updated.

Membership

Description

The membership object.

Members
arn
Required: Yes
Type: string

The unique ARN for the membership.

collaborationArn
Required: Yes
Type: string

The unique ARN for the membership's associated collaboration.

collaborationCreatorAccountId
Required: Yes
Type: string

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

collaborationCreatorDisplayName
Required: Yes
Type: string

The display name of the collaboration creator.

collaborationId
Required: Yes
Type: string

The unique ID for the membership's collaboration.

collaborationName
Required: Yes
Type: string

The name of the membership's collaboration.

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the membership was created.

defaultResultConfiguration

The default protected query result configuration as specified by the member who can receive results.

id
Required: Yes
Type: string

The unique ID of the membership.

memberAbilities
Required: Yes
Type: Array of strings

The abilities granted to the collaboration member.

paymentConfiguration
Required: Yes
Type: MembershipPaymentConfiguration structure

The payment responsibilities accepted by the collaboration member.

queryLogStatus
Required: Yes
Type: string

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

status
Required: Yes
Type: string

The status of the membership.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the membership metadata was last updated.

MembershipPaymentConfiguration

Description

An object representing the payment responsibilities accepted by the collaboration member.

Members
queryCompute
Required: Yes
Type: MembershipQueryComputePaymentConfig structure

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

MembershipProtectedQueryOutputConfiguration

Description

Contains configurations for protected query results.

Members
s3

Contains the configuration to write the query results to S3.

MembershipProtectedQueryResultConfiguration

Description

Contains configurations for protected query results.

Members
outputConfiguration
Required: Yes
Type: MembershipProtectedQueryOutputConfiguration structure

Configuration for protected query results.

roleArn
Type: 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.

MembershipQueryComputePaymentConfig

Description

An object representing the payment responsibilities accepted by the collaboration member for query compute costs.

Members
isResponsible
Required: Yes
Type: 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.

MembershipSummary

Description

The membership object listed by the request.

Members
arn
Required: Yes
Type: string

The unique ARN for the membership.

collaborationArn
Required: Yes
Type: string

The unique ARN for the membership's associated collaboration.

collaborationCreatorAccountId
Required: Yes
Type: string

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

collaborationCreatorDisplayName
Required: Yes
Type: string

The display name of the collaboration creator.

collaborationId
Required: Yes
Type: string

The unique ID for the membership's collaboration.

collaborationName
Required: Yes
Type: string

The name for the membership's collaboration.

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the membership was created.

id
Required: Yes
Type: string

The unique ID for the membership's collaboration.

memberAbilities
Required: Yes
Type: Array of strings

The abilities granted to the collaboration member.

paymentConfiguration
Required: Yes
Type: MembershipPaymentConfiguration structure

The payment responsibilities accepted by the collaboration member.

status
Required: Yes
Type: string

The status of the membership.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the membership metadata was last updated.

PaymentConfiguration

Description

An object representing the collaboration member's payment responsibilities set by the collaboration creator.

Members
queryCompute
Required: Yes
Type: QueryComputePaymentConfig structure

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

PreviewPrivacyImpactParametersInput

Description

Specifies the updated epsilon and noise parameters to preview. The preview allows you to see how the maximum number of each type of aggregation function would change with the new parameters.

Members
differentialPrivacy

An array that specifies the epsilon and noise parameters.

PrivacyBudget

Description

The epsilon parameter value and number of each aggregation function that you can perform.

Members
differentialPrivacy

An object that specifies the epsilon parameter and the utility in terms of total aggregations, as well as the remaining aggregations available.

PrivacyBudgetSummary

Description

An array that summaries the specified privacy budget. This summary includes collaboration information, creation information, membership information, and privacy budget information.

Members
budget
Required: Yes
Type: PrivacyBudget structure

The provided privacy budget.

collaborationArn
Required: Yes
Type: string

The ARN of the collaboration that contains this privacy budget.

collaborationId
Required: Yes
Type: string

The unique identifier of the collaboration that contains this privacy budget.

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time at which the privacy budget was created.

id
Required: Yes
Type: string

The unique identifier of the privacy budget.

membershipArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the member who created the privacy budget summary.

membershipId
Required: Yes
Type: string

The identifier for a membership resource.

privacyBudgetTemplateArn
Required: Yes
Type: string

The ARN of the privacy budget template.

privacyBudgetTemplateId
Required: Yes
Type: string

The unique identifier of the privacy budget template.

type
Required: Yes
Type: string

Specifies the type of the privacy budget.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The most recent time at which the privacy budget was updated.

PrivacyBudgetTemplate

Description

An object that defines the privacy budget template.

Members
arn
Required: Yes
Type: string

The ARN of the privacy budget template.

autoRefresh
Required: Yes
Type: string

How often the privacy budget refreshes.

If you plan to regularly bring new data into the collaboration, use CALENDAR_MONTH to automatically get a new privacy budget for the collaboration every calendar month. Choosing this option allows arbitrary amounts of information to be revealed about rows of the data when repeatedly queried across refreshes. Avoid choosing this if the same rows will be repeatedly queried between privacy budget refreshes.

collaborationArn
Required: Yes
Type: string

The ARN of the collaboration that contains this privacy budget template.

collaborationId
Required: Yes
Type: string

The unique ID of the collaboration that contains this privacy budget template.

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time at which the privacy budget template was created.

id
Required: Yes
Type: string

The unique identifier of the privacy budget template.

membershipArn
Required: Yes
Type: string

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

membershipId
Required: Yes
Type: string

The identifier for a membership resource.

parameters
Required: Yes
Type: PrivacyBudgetTemplateParametersOutput structure

Specifies the epislon and noise parameters for the privacy budget template.

privacyBudgetType
Required: Yes
Type: string

Specifies the type of the privacy budget template.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The most recent time at which the privacy budget template was updated.

PrivacyBudgetTemplateParametersInput

Description

The epsilon and noise parameters that you want to use for the privacy budget template.

Members
differentialPrivacy

An object that specifies the epsilon and noise parameters.

PrivacyBudgetTemplateParametersOutput

Description

The epsilon and noise parameters that were used in the privacy budget template.

Members
differentialPrivacy

The epsilon and noise parameters.

PrivacyBudgetTemplateSummary

Description

A summary of the privacy budget template. The summary includes membership information, collaboration information, and creation information.

Members
arn
Required: Yes
Type: string

The ARN of the privacy budget template.

collaborationArn
Required: Yes
Type: string

The ARN of the collaboration that contains this privacy budget template.

collaborationId
Required: Yes
Type: string

The unique ID of the collaboration that contains this privacy budget template.

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time at which the privacy budget template was created.

id
Required: Yes
Type: string

The unique identifier of the privacy budget template.

membershipArn
Required: Yes
Type: string

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

membershipId
Required: Yes
Type: string

The identifier for a membership resource.

privacyBudgetType
Required: Yes
Type: string

The type of the privacy budget template.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The most recent time at which the privacy budget template was updated.

PrivacyBudgetTemplateUpdateParameters

Description

The epsilon and noise parameters that you want to update in the privacy budget template.

Members
differentialPrivacy

An object that specifies the new values for the epsilon and noise parameters.

PrivacyImpact

Description

Provides an estimate of the number of aggregation functions that the member who can query can run given the epsilon and noise parameters.

Members
differentialPrivacy

An object that lists the number and type of aggregation functions you can perform.

ProtectedQuery

Description

The parameters for an Clean Rooms protected query.

Members
createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time at which the protected query was created.

differentialPrivacy

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

error
Type: ProtectedQueryError structure

An error thrown by the protected query.

id
Required: Yes
Type: string

The identifier for a protected query instance.

membershipArn
Required: Yes
Type: string

The ARN of the membership.

membershipId
Required: Yes
Type: string

The identifier for the membership.

result
Type: ProtectedQueryResult structure

The result of the protected query.

resultConfiguration

Contains any details needed to write the query results.

sqlParameters
Type: ProtectedQuerySQLParameters structure

The protected query SQL parameters.

statistics
Type: ProtectedQueryStatistics structure

Statistics about protected query execution.

status
Required: Yes
Type: string

The status of the query.

ProtectedQueryError

Description

Details of errors thrown by the protected query.

Members
code
Required: Yes
Type: string

An error code for the error.

message
Required: Yes
Type: string

A description of why the query failed.

ProtectedQueryOutput

Description

Contains details about the protected query output.

Members
memberList
Type: Array of ProtectedQuerySingleMemberOutput structures

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

s3
Type: ProtectedQueryS3Output structure

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

ProtectedQueryOutputConfiguration

Description

Contains configuration details for protected query output.

Members
s3

Required configuration for a protected query with an `S3` output type.

ProtectedQueryResult

Description

Details about the query results.

Members
output
Required: Yes
Type: ProtectedQueryOutput structure

The output of the protected query.

ProtectedQueryResultConfiguration

Description

Contains configurations for protected query results.

Members
outputConfiguration
Required: Yes
Type: ProtectedQueryOutputConfiguration structure

Configuration for protected query results.

ProtectedQueryS3Output

Description

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

Members
location
Required: Yes
Type: string

The S3 location of the result.

ProtectedQueryS3OutputConfiguration

Description

Contains the configuration to write the query results to S3.

Members
bucket
Required: Yes
Type: string

The S3 bucket to unload the protected query results.

keyPrefix
Type: string

The S3 prefix to unload the protected query results.

resultFormat
Required: Yes
Type: string

Intended file format of the result.

ProtectedQuerySQLParameters

Description

The parameters for the SQL type Protected Query.

Members
analysisTemplateArn
Type: string

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

parameters
Type: Associative array of custom strings keys (ParameterName) to strings

The protected query SQL parameters.

queryString
Type: string

The query string to be submitted.

ProtectedQuerySingleMemberOutput

Description

Details about the member who received the query result.

Members
accountId
Required: Yes
Type: string

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

ProtectedQueryStatistics

Description

Contains statistics about the execution of the protected query.

Members
totalDurationInMillis
Type: long (int|float)

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

ProtectedQuerySummary

Description

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

Members
createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the protected query was created.

id
Required: Yes
Type: string

The unique ID of the protected query.

membershipArn
Required: Yes
Type: string

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

membershipId
Required: Yes
Type: string

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

status
Required: Yes
Type: string

The status of the protected query. Value values are `SUBMITTED`, `STARTED`, `CANCELLED`, `CANCELLING`, `FAILED`, `SUCCESS`, `TIMED_OUT`.

QueryComputePaymentConfig

Description

An object representing the collaboration member's payment responsibilities set by the collaboration creator for query compute costs.

Members
isResponsible
Required: Yes
Type: 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.

ResourceNotFoundException

Description

Request references a resource which does not exist.

Members
message
Required: Yes
Type: string
resourceId
Required: Yes
Type: string

The Id of the missing resource.

resourceType
Required: Yes
Type: string

The type of the missing resource.

Schema

Description

A schema is a relation within a collaboration.

Members
analysisMethod
Type: string

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

analysisRuleTypes
Required: Yes
Type: Array of strings

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

collaborationArn
Required: Yes
Type: string

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

collaborationId
Required: Yes
Type: string

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

columns
Required: Yes
Type: Array of Column structures

The columns for the relation this schema represents.

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the schema was created.

creatorAccountId
Required: Yes
Type: string

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

description
Required: Yes
Type: string

A description for the schema.

name
Required: Yes
Type: string

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

partitionKeys
Required: Yes
Type: Array of Column structures

The partition keys for the dataset underlying this schema.

schemaStatusDetails
Required: Yes
Type: Array of SchemaStatusDetail structures

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

type
Required: Yes
Type: string

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

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the schema was last updated.

SchemaAnalysisRuleRequest

Description

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

Members
name
Required: Yes
Type: string

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

type
Required: Yes
Type: string

The type of analysis rule schema that you are requesting.

SchemaStatusDetail

Description

Information about the schema status.

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

Members
analysisRuleType
Type: string

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

configurations
Type: Array of strings

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

reasons
Type: Array of SchemaStatusReason structures

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

status
Required: Yes
Type: string

The status of the schema.

SchemaStatusReason

Description

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

Members
code
Required: Yes
Type: string

The schema status reason code.

message
Required: Yes
Type: string

An explanation of the schema status reason code.

SchemaSummary

Description

The schema summary for the objects listed by the request.

Members
analysisMethod
Type: string

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

analysisRuleTypes
Required: Yes
Type: Array of strings

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

collaborationArn
Required: Yes
Type: string

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

collaborationId
Required: Yes
Type: string

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

createTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the schema object was created.

creatorAccountId
Required: Yes
Type: string

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

name
Required: Yes
Type: string

The name for the schema object.

type
Required: Yes
Type: string

The type of schema object. The only valid schema type is currently `TABLE`.

updateTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the schema object was last updated.

ServiceQuotaExceededException

Description

Request denied because service quota has been exceeded.

Members
message
Required: Yes
Type: string
quotaName
Required: Yes
Type: string

The name of the quota.

quotaValue
Required: Yes
Type: double

The value of the quota.

TableReference

Description

A pointer to the dataset that underlies this table. Currently, this can only be an Glue table.

Members
glue
Type: GlueTableReference structure

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

ThrottlingException

Description

Request was denied due to request throttling.

Members
message
Type: string

ValidationException

Description

The input fails to satisfy the specified constraints.

Members
fieldList
Type: Array of ValidationExceptionField structures

Validation errors for specific input parameters.

message
Type: string
reason
Type: string

A reason code for the exception.

ValidationExceptionField

Description

Describes validation errors for specific input parameters.

Members
message
Required: Yes
Type: string

A message for the input validation error.

name
Required: Yes
Type: string

The name of the input parameter.