CreateCollaboration - AWS Clean Rooms

CreateCollaboration

Creates a new collaboration.

Request Syntax

POST /collaborations HTTP/1.1 Content-type: application/json { "analyticsEngine": "string", "creatorDisplayName": "string", "creatorMemberAbilities": [ "string" ], "creatorMLMemberAbilities": { "customMLMemberAbilities": [ "string" ] }, "creatorPaymentConfiguration": { "machineLearning": { "modelInference": { "isResponsible": boolean }, "modelTraining": { "isResponsible": boolean } }, "queryCompute": { "isResponsible": boolean } }, "dataEncryptionMetadata": { "allowCleartext": boolean, "allowDuplicates": boolean, "allowJoinsOnColumnsWithDifferentNames": boolean, "preserveNulls": boolean }, "description": "string", "members": [ { "accountId": "string", "displayName": "string", "memberAbilities": [ "string" ], "mlMemberAbilities": { "customMLMemberAbilities": [ "string" ] }, "paymentConfiguration": { "machineLearning": { "modelInference": { "isResponsible": boolean }, "modelTraining": { "isResponsible": boolean } }, "queryCompute": { "isResponsible": boolean } } } ], "name": "string", "queryLogStatus": "string", "tags": { "string" : "string" } }

URI Request Parameters

The request does not use any URI parameters.

Request Body

The request accepts the following data in JSON format.

analyticsEngine

The analytics engine.

Type: String

Valid Values: SPARK | CLEAN_ROOMS_SQL

Required: No

creatorDisplayName

The display name of the collaboration creator.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 100.

Pattern: (?!\s*$)[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDBFF-\uDC00\uDFFF\t]*

Required: Yes

creatorMemberAbilities

The abilities granted to the collaboration creator.

Type: Array of strings

Valid Values: CAN_QUERY | CAN_RECEIVE_RESULTS

Required: Yes

creatorMLMemberAbilities

The ML abilities granted to the collaboration creator.

Type: MLMemberAbilities object

Required: No

creatorPaymentConfiguration

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

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

Type: PaymentConfiguration object

Required: No

dataEncryptionMetadata

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

Type: DataEncryptionMetadata object

Required: No

description

A description of the collaboration provided by the collaboration owner.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 255.

Pattern: (?!\s*$)[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDBFF-\uDC00\uDFFF\t\r\n]*

Required: Yes

members

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

Type: Array of MemberSpecification objects

Array Members: Minimum number of 0 items. Maximum number of 9 items.

Required: Yes

name

The display name for a collaboration.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 100.

Pattern: (?!\s*$)[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDBFF-\uDC00\uDFFF\t]*

Required: Yes

queryLogStatus

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

Type: String

Valid Values: ENABLED | DISABLED

Required: Yes

tags

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

Type: String to string map

Map Entries: Minimum number of 0 items. Maximum number of 200 items.

Key Length Constraints: Minimum length of 1. Maximum length of 128.

Value Length Constraints: Minimum length of 0. Maximum length of 256.

Required: No

Response Syntax

HTTP/1.1 200 Content-type: application/json { "collaboration": { "analyticsEngine": "string", "arn": "string", "createTime": number, "creatorAccountId": "string", "creatorDisplayName": "string", "dataEncryptionMetadata": { "allowCleartext": boolean, "allowDuplicates": boolean, "allowJoinsOnColumnsWithDifferentNames": boolean, "preserveNulls": boolean }, "description": "string", "id": "string", "membershipArn": "string", "membershipId": "string", "memberStatus": "string", "name": "string", "queryLogStatus": "string", "updateTime": number } }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

collaboration

The collaboration.

Type: Collaboration object

Errors

For information about the errors that are common to all actions, see Common Errors.

AccessDeniedException

Caller does not have sufficient access to perform this action.

HTTP Status Code: 403

InternalServerException

Unexpected error during processing of request.

HTTP Status Code: 500

ServiceQuotaExceededException

Request denied because service quota has been exceeded.

HTTP Status Code: 402

ThrottlingException

Request was denied due to request throttling.

HTTP Status Code: 429

ValidationException

The input fails to satisfy the specified constraints.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: