From 03a2f9ac9f14423c2660de675fedc8d708e3eab3 Mon Sep 17 00:00:00 2001 From: awstools Date: Thu, 29 Jun 2023 19:15:00 +0000 Subject: [PATCH] feat(client-cleanrooms): This release adds support for the OR operator in RSQL join match conditions and the ability to control which operators (AND, OR) are allowed in a join match condition. --- clients/client-cleanrooms/README.md | 9 +- clients/client-cleanrooms/src/CleanRooms.ts | 9 +- .../client-cleanrooms/src/CleanRoomsClient.ts | 9 +- ...reateConfiguredTableAnalysisRuleCommand.ts | 12 ++ .../GetConfiguredTableAnalysisRuleCommand.ts | 6 + .../src/commands/GetProtectedQueryCommand.ts | 2 +- .../commands/GetSchemaAnalysisRuleCommand.ts | 6 + .../commands/StartProtectedQueryCommand.ts | 6 +- ...pdateConfiguredTableAnalysisRuleCommand.ts | 12 ++ .../commands/UpdateProtectedQueryCommand.ts | 2 +- clients/client-cleanrooms/src/index.ts | 9 +- .../client-cleanrooms/src/models/models_0.ts | 71 ++++--- .../src/protocols/Aws_restJson1.ts | 5 + .../sdk-codegen/aws-models/cleanrooms.json | 191 +++++++++++------- 14 files changed, 228 insertions(+), 121 deletions(-) diff --git a/clients/client-cleanrooms/README.md b/clients/client-cleanrooms/README.md index fff65765686d..4ef56705af26 100644 --- a/clients/client-cleanrooms/README.md +++ b/clients/client-cleanrooms/README.md @@ -6,14 +6,13 @@ AWS SDK for JavaScript CleanRooms Client for Node.js, Browser and React Native. -

Welcome to the AWS Clean Rooms API Reference.

-

AWS Clean Rooms is an AWS service that helps multiple parties to join their data +

Welcome to the Clean Rooms API Reference.

+

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

-

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

+

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

## Installing diff --git a/clients/client-cleanrooms/src/CleanRooms.ts b/clients/client-cleanrooms/src/CleanRooms.ts index 39ce49894776..ad6aa0b19356 100644 --- a/clients/client-cleanrooms/src/CleanRooms.ts +++ b/clients/client-cleanrooms/src/CleanRooms.ts @@ -798,14 +798,13 @@ export interface CleanRooms { /** * @public - *

Welcome to the AWS Clean Rooms API Reference.

- *

AWS Clean Rooms is an AWS service that helps multiple parties to join their data + *

Welcome to the Clean Rooms API Reference.

+ *

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

- *

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

+ *

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

*/ export class CleanRooms extends CleanRoomsClient implements CleanRooms {} createAggregatedClient(commands, CleanRooms); diff --git a/clients/client-cleanrooms/src/CleanRoomsClient.ts b/clients/client-cleanrooms/src/CleanRoomsClient.ts index f3aee902fc4e..e9509f5e4445 100644 --- a/clients/client-cleanrooms/src/CleanRoomsClient.ts +++ b/clients/client-cleanrooms/src/CleanRoomsClient.ts @@ -407,14 +407,13 @@ export interface CleanRoomsClientResolvedConfig extends CleanRoomsClientResolved /** * @public - *

Welcome to the AWS Clean Rooms API Reference.

- *

AWS Clean Rooms is an AWS service that helps multiple parties to join their data + *

Welcome to the Clean Rooms API Reference.

+ *

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

- *

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

+ *

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

*/ export class CleanRoomsClient extends __Client< __HttpHandlerOptions, diff --git a/clients/client-cleanrooms/src/commands/CreateConfiguredTableAnalysisRuleCommand.ts b/clients/client-cleanrooms/src/commands/CreateConfiguredTableAnalysisRuleCommand.ts index 3576cc90e925..0edc2bb0956b 100644 --- a/clients/client-cleanrooms/src/commands/CreateConfiguredTableAnalysisRuleCommand.ts +++ b/clients/client-cleanrooms/src/commands/CreateConfiguredTableAnalysisRuleCommand.ts @@ -58,6 +58,9 @@ export interface CreateConfiguredTableAnalysisRuleCommandOutput * joinColumns: [ // AnalysisRuleColumnList // required * "STRING_VALUE", * ], + * allowedJoinOperators: [ // JoinOperatorsList + * "STRING_VALUE", + * ], * listColumns: [ // required * "STRING_VALUE", * ], @@ -75,6 +78,9 @@ export interface CreateConfiguredTableAnalysisRuleCommandOutput * "STRING_VALUE", * ], * joinRequired: "STRING_VALUE", + * allowedJoinOperators: [ + * "STRING_VALUE", + * ], * dimensionColumns: [ // required * "STRING_VALUE", * ], @@ -104,6 +110,9 @@ export interface CreateConfiguredTableAnalysisRuleCommandOutput * // joinColumns: [ // AnalysisRuleColumnList // required * // "STRING_VALUE", * // ], + * // allowedJoinOperators: [ // JoinOperatorsList + * // "STRING_VALUE", + * // ], * // listColumns: [ // required * // "STRING_VALUE", * // ], @@ -121,6 +130,9 @@ export interface CreateConfiguredTableAnalysisRuleCommandOutput * // "STRING_VALUE", * // ], * // joinRequired: "STRING_VALUE", + * // allowedJoinOperators: [ + * // "STRING_VALUE", + * // ], * // dimensionColumns: [ // required * // "STRING_VALUE", * // ], diff --git a/clients/client-cleanrooms/src/commands/GetConfiguredTableAnalysisRuleCommand.ts b/clients/client-cleanrooms/src/commands/GetConfiguredTableAnalysisRuleCommand.ts index b29761c46a59..2f9a9fa6b5ed 100644 --- a/clients/client-cleanrooms/src/commands/GetConfiguredTableAnalysisRuleCommand.ts +++ b/clients/client-cleanrooms/src/commands/GetConfiguredTableAnalysisRuleCommand.ts @@ -64,6 +64,9 @@ export interface GetConfiguredTableAnalysisRuleCommandOutput * // joinColumns: [ // AnalysisRuleColumnList // required * // "STRING_VALUE", * // ], + * // allowedJoinOperators: [ // JoinOperatorsList + * // "STRING_VALUE", + * // ], * // listColumns: [ // required * // "STRING_VALUE", * // ], @@ -81,6 +84,9 @@ export interface GetConfiguredTableAnalysisRuleCommandOutput * // "STRING_VALUE", * // ], * // joinRequired: "STRING_VALUE", + * // allowedJoinOperators: [ + * // "STRING_VALUE", + * // ], * // dimensionColumns: [ // required * // "STRING_VALUE", * // ], diff --git a/clients/client-cleanrooms/src/commands/GetProtectedQueryCommand.ts b/clients/client-cleanrooms/src/commands/GetProtectedQueryCommand.ts index e6f55ce8cd10..df3bb728efb7 100644 --- a/clients/client-cleanrooms/src/commands/GetProtectedQueryCommand.ts +++ b/clients/client-cleanrooms/src/commands/GetProtectedQueryCommand.ts @@ -60,7 +60,7 @@ export interface GetProtectedQueryCommandOutput extends GetProtectedQueryOutput, * // membershipArn: "STRING_VALUE", // required * // createTime: new Date("TIMESTAMP"), // required * // sqlParameters: { // ProtectedQuerySQLParameters - * // queryString: "STRING_VALUE", // required + * // queryString: "STRING_VALUE", * // }, * // status: "STRING_VALUE", // required * // resultConfiguration: { // ProtectedQueryResultConfiguration diff --git a/clients/client-cleanrooms/src/commands/GetSchemaAnalysisRuleCommand.ts b/clients/client-cleanrooms/src/commands/GetSchemaAnalysisRuleCommand.ts index 79740a41c2e6..4e9748e3ada0 100644 --- a/clients/client-cleanrooms/src/commands/GetSchemaAnalysisRuleCommand.ts +++ b/clients/client-cleanrooms/src/commands/GetSchemaAnalysisRuleCommand.ts @@ -63,6 +63,9 @@ export interface GetSchemaAnalysisRuleCommandOutput extends GetSchemaAnalysisRul * // joinColumns: [ // AnalysisRuleColumnList // required * // "STRING_VALUE", * // ], + * // allowedJoinOperators: [ // JoinOperatorsList + * // "STRING_VALUE", + * // ], * // listColumns: [ // required * // "STRING_VALUE", * // ], @@ -80,6 +83,9 @@ export interface GetSchemaAnalysisRuleCommandOutput extends GetSchemaAnalysisRul * // "STRING_VALUE", * // ], * // joinRequired: "STRING_VALUE", + * // allowedJoinOperators: [ + * // "STRING_VALUE", + * // ], * // dimensionColumns: [ // required * // "STRING_VALUE", * // ], diff --git a/clients/client-cleanrooms/src/commands/StartProtectedQueryCommand.ts b/clients/client-cleanrooms/src/commands/StartProtectedQueryCommand.ts index b55a85c9695f..fff4d2fcbf77 100644 --- a/clients/client-cleanrooms/src/commands/StartProtectedQueryCommand.ts +++ b/clients/client-cleanrooms/src/commands/StartProtectedQueryCommand.ts @@ -41,7 +41,7 @@ export interface StartProtectedQueryCommandOutput extends StartProtectedQueryOut /** * @public - *

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

+ *

Creates a protected query that is started by Clean Rooms .

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript @@ -52,7 +52,7 @@ export interface StartProtectedQueryCommandOutput extends StartProtectedQueryOut * type: "STRING_VALUE", // required * membershipIdentifier: "STRING_VALUE", // required * sqlParameters: { // ProtectedQuerySQLParameters - * queryString: "STRING_VALUE", // required + * queryString: "STRING_VALUE", * }, * resultConfiguration: { // ProtectedQueryResultConfiguration * outputConfiguration: { // ProtectedQueryOutputConfiguration Union: only one key present @@ -73,7 +73,7 @@ export interface StartProtectedQueryCommandOutput extends StartProtectedQueryOut * // membershipArn: "STRING_VALUE", // required * // createTime: new Date("TIMESTAMP"), // required * // sqlParameters: { // ProtectedQuerySQLParameters - * // queryString: "STRING_VALUE", // required + * // queryString: "STRING_VALUE", * // }, * // status: "STRING_VALUE", // required * // resultConfiguration: { // ProtectedQueryResultConfiguration diff --git a/clients/client-cleanrooms/src/commands/UpdateConfiguredTableAnalysisRuleCommand.ts b/clients/client-cleanrooms/src/commands/UpdateConfiguredTableAnalysisRuleCommand.ts index f749e0170d5d..2a95da98c631 100644 --- a/clients/client-cleanrooms/src/commands/UpdateConfiguredTableAnalysisRuleCommand.ts +++ b/clients/client-cleanrooms/src/commands/UpdateConfiguredTableAnalysisRuleCommand.ts @@ -57,6 +57,9 @@ export interface UpdateConfiguredTableAnalysisRuleCommandOutput * joinColumns: [ // AnalysisRuleColumnList // required * "STRING_VALUE", * ], + * allowedJoinOperators: [ // JoinOperatorsList + * "STRING_VALUE", + * ], * listColumns: [ // required * "STRING_VALUE", * ], @@ -74,6 +77,9 @@ export interface UpdateConfiguredTableAnalysisRuleCommandOutput * "STRING_VALUE", * ], * joinRequired: "STRING_VALUE", + * allowedJoinOperators: [ + * "STRING_VALUE", + * ], * dimensionColumns: [ // required * "STRING_VALUE", * ], @@ -103,6 +109,9 @@ export interface UpdateConfiguredTableAnalysisRuleCommandOutput * // joinColumns: [ // AnalysisRuleColumnList // required * // "STRING_VALUE", * // ], + * // allowedJoinOperators: [ // JoinOperatorsList + * // "STRING_VALUE", + * // ], * // listColumns: [ // required * // "STRING_VALUE", * // ], @@ -120,6 +129,9 @@ export interface UpdateConfiguredTableAnalysisRuleCommandOutput * // "STRING_VALUE", * // ], * // joinRequired: "STRING_VALUE", + * // allowedJoinOperators: [ + * // "STRING_VALUE", + * // ], * // dimensionColumns: [ // required * // "STRING_VALUE", * // ], diff --git a/clients/client-cleanrooms/src/commands/UpdateProtectedQueryCommand.ts b/clients/client-cleanrooms/src/commands/UpdateProtectedQueryCommand.ts index 766709c4fd09..36cf9c4332a2 100644 --- a/clients/client-cleanrooms/src/commands/UpdateProtectedQueryCommand.ts +++ b/clients/client-cleanrooms/src/commands/UpdateProtectedQueryCommand.ts @@ -61,7 +61,7 @@ export interface UpdateProtectedQueryCommandOutput extends UpdateProtectedQueryO * // membershipArn: "STRING_VALUE", // required * // createTime: new Date("TIMESTAMP"), // required * // sqlParameters: { // ProtectedQuerySQLParameters - * // queryString: "STRING_VALUE", // required + * // queryString: "STRING_VALUE", * // }, * // status: "STRING_VALUE", // required * // resultConfiguration: { // ProtectedQueryResultConfiguration diff --git a/clients/client-cleanrooms/src/index.ts b/clients/client-cleanrooms/src/index.ts index 80a02986e47c..cefbc5decdc7 100644 --- a/clients/client-cleanrooms/src/index.ts +++ b/clients/client-cleanrooms/src/index.ts @@ -1,14 +1,13 @@ // smithy-typescript generated code /* eslint-disable */ /** - *

Welcome to the AWS Clean Rooms API Reference.

- *

AWS Clean Rooms is an AWS service that helps multiple parties to join their data + *

Welcome to the Clean Rooms API Reference.

+ *

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

- *

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

+ *

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

* * @packageDocumentation */ diff --git a/clients/client-cleanrooms/src/models/models_0.ts b/clients/client-cleanrooms/src/models/models_0.ts index 896a402e1b81..07993f4aa60e 100644 --- a/clients/client-cleanrooms/src/models/models_0.ts +++ b/clients/client-cleanrooms/src/models/models_0.ts @@ -126,6 +126,20 @@ export const AnalysisMethod = { */ export type AnalysisMethod = (typeof AnalysisMethod)[keyof typeof AnalysisMethod]; +/** + * @public + * @enum + */ +export const JoinOperator = { + AND: "AND", + OR: "OR", +} as const; + +/** + * @public + */ +export type JoinOperator = (typeof JoinOperator)[keyof typeof JoinOperator]; + /** * @public * @enum @@ -166,7 +180,7 @@ export type ScalarFunctions = (typeof ScalarFunctions)[keyof typeof ScalarFuncti /** * @public - *

Enables query structure and specified queries that product aggregate statistics.

+ *

Enables query structure and specified queries that produce aggregate statistics.

*/ export interface AnalysisRuleAggregation { /** @@ -182,10 +196,16 @@ export interface AnalysisRuleAggregation { /** *

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

+ * and/or other configured table in query.

*/ joinRequired?: JoinRequiredOption | string; + /** + *

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

+ */ + allowedJoinOperators?: (JoinOperator | string)[]; + /** *

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

*/ @@ -208,10 +228,16 @@ export interface AnalysisRuleAggregation { */ export interface AnalysisRuleList { /** - *

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

+ *

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

*/ joinColumns: string[] | undefined; + /** + *

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

+ */ + allowedJoinOperators?: (JoinOperator | string)[]; + /** *

Columns that can be listed in the output.

*/ @@ -391,7 +417,7 @@ export interface BatchGetSchemaError { /** * @public - *

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

+ *

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

*/ export interface Column { /** @@ -446,7 +472,7 @@ export interface Schema { analysisMethod?: AnalysisMethod | string; /** - *

The unique account ID for the AWS account that owns the schema.

+ *

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

*/ creatorAccountId: string | undefined; @@ -699,7 +725,7 @@ export interface DataEncryptionMetadata { */ export interface MemberSpecification { /** - *

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

+ *

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

*/ accountId: string | undefined; @@ -820,7 +846,7 @@ export interface Collaboration { description?: string; /** - *

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

+ *

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

*/ creatorAccountId: string | undefined; @@ -1130,7 +1156,7 @@ export interface CollaborationSummary { name: string | undefined; /** - *

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

+ *

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

*/ creatorAccountId: string | undefined; @@ -1206,7 +1232,7 @@ export interface ListMembersInput { */ export interface MemberSummary { /** - *

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

+ *

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

*/ accountId: string | undefined; @@ -1303,7 +1329,7 @@ export interface SchemaSummary { type: SchemaType | string | undefined; /** - *

The unique account ID for the AWS account that owns the schema.

+ *

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

*/ creatorAccountId: string | undefined; @@ -1664,24 +1690,23 @@ export interface UpdateConfiguredTableAssociationOutput { /** * @public - *

A reference to a table within an AWS Glue data catalog.

+ *

A reference to a table within an Glue data catalog.

*/ export interface GlueTableReference { /** - *

The name of the AWS Glue table.

+ *

The name of the Glue table.

*/ tableName: string | undefined; /** - *

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

+ *

The name of the database the Glue table belongs to.

*/ databaseName: string | undefined; } /** * @public - *

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

+ *

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

*/ export type TableReference = TableReference.GlueMember | TableReference.$UnknownMember; @@ -1690,7 +1715,7 @@ export type TableReference = TableReference.GlueMember | TableReference.$Unknown */ export namespace TableReference { /** - *

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

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

*/ export interface GlueMember { @@ -1729,7 +1754,7 @@ export interface CreateConfiguredTableInput { description?: string; /** - *

A reference to the AWS Glue table being configured.

+ *

A reference to the Glue table being configured.

*/ tableReference: TableReference | undefined; @@ -1793,7 +1818,7 @@ export interface ConfiguredTable { description?: string; /** - *

The AWS Glue table that this configured table represents.

+ *

The Glue table that this configured table represents.

*/ tableReference: TableReference | undefined; @@ -1818,7 +1843,7 @@ export interface ConfiguredTable { analysisMethod: AnalysisMethod | string | undefined; /** - *

The columns within the underlying AWS Glue table that can be utilized within + *

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

*/ allowedColumns: string[] | undefined; @@ -2300,7 +2325,7 @@ export interface Membership { collaborationId: string | undefined; /** - *

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

+ *

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

*/ collaborationCreatorAccountId: string | undefined; @@ -2563,7 +2588,7 @@ export interface ProtectedQuerySQLParameters { /** *

The query string to be submitted.

*/ - queryString: string | undefined; + queryString?: string; } /** @@ -2598,7 +2623,7 @@ export type ProtectedQueryStatus = (typeof ProtectedQueryStatus)[keyof typeof Pr /** * @public - *

The parameters for an AWS Clean Rooms protected query.

+ *

The parameters for an Clean Rooms protected query.

*/ export interface ProtectedQuery { /** @@ -2708,7 +2733,7 @@ export interface MembershipSummary { collaborationId: string | undefined; /** - *

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

+ *

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

*/ collaborationCreatorAccountId: string | undefined; diff --git a/clients/client-cleanrooms/src/protocols/Aws_restJson1.ts b/clients/client-cleanrooms/src/protocols/Aws_restJson1.ts index 36db7e2d54ff..9b22a1bdec81 100644 --- a/clients/client-cleanrooms/src/protocols/Aws_restJson1.ts +++ b/clients/client-cleanrooms/src/protocols/Aws_restJson1.ts @@ -144,6 +144,7 @@ import { DataEncryptionMetadata, GlueTableReference, InternalServerException, + JoinOperator, MemberAbility, Membership, MembershipSummary, @@ -3828,6 +3829,8 @@ const de_ValidationExceptionRes = async (parsedOutput: any, context: __SerdeCont // se_GlueTableReference omitted. +// se_JoinOperatorsList omitted. + // se_MemberAbilities omitted. // se_MemberList omitted. @@ -4069,6 +4072,8 @@ const de_ConfiguredTableSummaryList = (output: any, context: __SerdeContext): Co // de_GlueTableReference omitted. +// de_JoinOperatorsList omitted. + // de_MemberAbilities omitted. /** diff --git a/codegen/sdk-codegen/aws-models/cleanrooms.json b/codegen/sdk-codegen/aws-models/cleanrooms.json index 06f353a29210..3f6c26b06555 100644 --- a/codegen/sdk-codegen/aws-models/cleanrooms.json +++ b/codegen/sdk-codegen/aws-models/cleanrooms.json @@ -52,7 +52,7 @@ "additionalExposedHeaders": ["x-amzn-errortype", "x-amzn-requestid", "x-amzn-trace-id"], "maxAge": 86400 }, - "smithy.api#documentation": "

Welcome to the AWS Clean Rooms API Reference.

\n

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

\n

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

", + "smithy.api#documentation": "

Welcome to the Clean Rooms API Reference.

\n

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

\n

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

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", @@ -419,9 +419,9 @@ } }, "params": { + "UseFIPS": true, "UseDualStack": true, - "Region": "us-gov-east-1", - "UseFIPS": true + "Region": "us-gov-east-1" } }, { @@ -432,9 +432,9 @@ } }, "params": { + "UseFIPS": true, "UseDualStack": false, - "Region": "us-gov-east-1", - "UseFIPS": true + "Region": "us-gov-east-1" } }, { @@ -445,9 +445,9 @@ } }, "params": { + "UseFIPS": false, "UseDualStack": true, - "Region": "us-gov-east-1", - "UseFIPS": false + "Region": "us-gov-east-1" } }, { @@ -458,9 +458,9 @@ } }, "params": { + "UseFIPS": false, "UseDualStack": false, - "Region": "us-gov-east-1", - "UseFIPS": false + "Region": "us-gov-east-1" } }, { @@ -471,9 +471,9 @@ } }, "params": { + "UseFIPS": true, "UseDualStack": true, - "Region": "cn-north-1", - "UseFIPS": true + "Region": "cn-north-1" } }, { @@ -484,9 +484,9 @@ } }, "params": { + "UseFIPS": true, "UseDualStack": false, - "Region": "cn-north-1", - "UseFIPS": true + "Region": "cn-north-1" } }, { @@ -497,9 +497,9 @@ } }, "params": { + "UseFIPS": false, "UseDualStack": true, - "Region": "cn-north-1", - "UseFIPS": false + "Region": "cn-north-1" } }, { @@ -510,9 +510,9 @@ } }, "params": { + "UseFIPS": false, "UseDualStack": false, - "Region": "cn-north-1", - "UseFIPS": false + "Region": "cn-north-1" } }, { @@ -521,9 +521,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { + "UseFIPS": true, "UseDualStack": true, - "Region": "us-iso-east-1", - "UseFIPS": true + "Region": "us-iso-east-1" } }, { @@ -534,9 +534,9 @@ } }, "params": { + "UseFIPS": true, "UseDualStack": false, - "Region": "us-iso-east-1", - "UseFIPS": true + "Region": "us-iso-east-1" } }, { @@ -545,9 +545,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { + "UseFIPS": false, "UseDualStack": true, - "Region": "us-iso-east-1", - "UseFIPS": false + "Region": "us-iso-east-1" } }, { @@ -558,9 +558,9 @@ } }, "params": { + "UseFIPS": false, "UseDualStack": false, - "Region": "us-iso-east-1", - "UseFIPS": false + "Region": "us-iso-east-1" } }, { @@ -571,9 +571,9 @@ } }, "params": { + "UseFIPS": true, "UseDualStack": true, - "Region": "us-east-1", - "UseFIPS": true + "Region": "us-east-1" } }, { @@ -584,9 +584,9 @@ } }, "params": { + "UseFIPS": true, "UseDualStack": false, - "Region": "us-east-1", - "UseFIPS": true + "Region": "us-east-1" } }, { @@ -597,9 +597,9 @@ } }, "params": { + "UseFIPS": false, "UseDualStack": true, - "Region": "us-east-1", - "UseFIPS": false + "Region": "us-east-1" } }, { @@ -610,9 +610,9 @@ } }, "params": { + "UseFIPS": false, "UseDualStack": false, - "Region": "us-east-1", - "UseFIPS": false + "Region": "us-east-1" } }, { @@ -621,9 +621,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { + "UseFIPS": true, "UseDualStack": true, - "Region": "us-isob-east-1", - "UseFIPS": true + "Region": "us-isob-east-1" } }, { @@ -634,9 +634,9 @@ } }, "params": { + "UseFIPS": true, "UseDualStack": false, - "Region": "us-isob-east-1", - "UseFIPS": true + "Region": "us-isob-east-1" } }, { @@ -645,9 +645,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { + "UseFIPS": false, "UseDualStack": true, - "Region": "us-isob-east-1", - "UseFIPS": false + "Region": "us-isob-east-1" } }, { @@ -658,9 +658,9 @@ } }, "params": { + "UseFIPS": false, "UseDualStack": false, - "Region": "us-isob-east-1", - "UseFIPS": false + "Region": "us-isob-east-1" } }, { @@ -671,9 +671,9 @@ } }, "params": { + "UseFIPS": false, "UseDualStack": false, "Region": "us-east-1", - "UseFIPS": false, "Endpoint": "https://example.com" } }, @@ -683,9 +683,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { + "UseFIPS": true, "UseDualStack": false, "Region": "us-east-1", - "UseFIPS": true, "Endpoint": "https://example.com" } }, @@ -695,9 +695,9 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { + "UseFIPS": false, "UseDualStack": true, "Region": "us-east-1", - "UseFIPS": false, "Endpoint": "https://example.com" } } @@ -955,7 +955,13 @@ "joinRequired": { "target": "com.amazonaws.cleanrooms#JoinRequiredOption", "traits": { - "smithy.api#documentation": "

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

" + "smithy.api#documentation": "

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

" + } + }, + "allowedJoinOperators": { + "target": "com.amazonaws.cleanrooms#JoinOperatorsList", + "traits": { + "smithy.api#documentation": "

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

" } }, "dimensionColumns": { @@ -981,7 +987,7 @@ } }, "traits": { - "smithy.api#documentation": "

Enables query structure and specified queries that product aggregate statistics.

" + "smithy.api#documentation": "

Enables query structure and specified queries that produce aggregate statistics.

" } }, "com.amazonaws.cleanrooms#AnalysisRuleColumnList": { @@ -1012,13 +1018,19 @@ "joinColumns": { "target": "com.amazonaws.cleanrooms#AnalysisRuleColumnList", "traits": { - "smithy.api#documentation": "

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

", + "smithy.api#documentation": "

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

", "smithy.api#length": { "min": 1 }, "smithy.api#required": {} } }, + "allowedJoinOperators": { + "target": "com.amazonaws.cleanrooms#JoinOperatorsList", + "traits": { + "smithy.api#documentation": "

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

" + } + }, "listColumns": { "target": "com.amazonaws.cleanrooms#AnalysisRuleColumnList", "traits": { @@ -1247,7 +1259,7 @@ "creatorAccountId": { "target": "com.amazonaws.cleanrooms#AccountId", "traits": { - "smithy.api#documentation": "

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

", + "smithy.api#documentation": "

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

", "smithy.api#required": {} } }, @@ -1444,7 +1456,7 @@ "creatorAccountId": { "target": "com.amazonaws.cleanrooms#AccountId", "traits": { - "smithy.api#documentation": "

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

", + "smithy.api#documentation": "

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

", "smithy.api#required": {} } }, @@ -1518,7 +1530,7 @@ } }, "traits": { - "smithy.api#documentation": "

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

" + "smithy.api#documentation": "

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

" } }, "com.amazonaws.cleanrooms#ColumnList": { @@ -1579,7 +1591,7 @@ "tableReference": { "target": "com.amazonaws.cleanrooms#TableReference", "traits": { - "smithy.api#documentation": "

The AWS Glue table that this configured table represents.

", + "smithy.api#documentation": "

The Glue table that this configured table represents.

", "smithy.api#required": {} } }, @@ -1614,7 +1626,7 @@ "allowedColumns": { "target": "com.amazonaws.cleanrooms#AllowedColumnList", "traits": { - "smithy.api#documentation": "

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

", + "smithy.api#documentation": "

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

", "smithy.api#required": {} } } @@ -2474,7 +2486,7 @@ "tableReference": { "target": "com.amazonaws.cleanrooms#TableReference", "traits": { - "smithy.api#documentation": "

A reference to the AWS Glue table being configured.

", + "smithy.api#documentation": "

A reference to the Glue table being configured.

", "smithy.api#required": {} } }, @@ -3560,7 +3572,16 @@ } } }, - "com.amazonaws.cleanrooms#GlueResourceName": { + "com.amazonaws.cleanrooms#GlueDatabaseName": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 128 + }, + "smithy.api#pattern": "^[a-zA-Z0-9_](([a-zA-Z0-9_]+-)*([a-zA-Z0-9_]+))?$" + } + }, + "com.amazonaws.cleanrooms#GlueTableName": { "type": "string", "traits": { "smithy.api#length": { @@ -3573,22 +3594,22 @@ "type": "structure", "members": { "tableName": { - "target": "com.amazonaws.cleanrooms#GlueResourceName", + "target": "com.amazonaws.cleanrooms#GlueTableName", "traits": { - "smithy.api#documentation": "

The name of the AWS Glue table.

", + "smithy.api#documentation": "

The name of the Glue table.

", "smithy.api#required": {} } }, "databaseName": { - "target": "com.amazonaws.cleanrooms#GlueResourceName", + "target": "com.amazonaws.cleanrooms#GlueDatabaseName", "traits": { - "smithy.api#documentation": "

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

", + "smithy.api#documentation": "

The name of the database the Glue table belongs to.

", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

A reference to a table within an AWS Glue data catalog.

" + "smithy.api#documentation": "

A reference to a table within an Glue data catalog.

" } }, "com.amazonaws.cleanrooms#InternalServerException": { @@ -3604,6 +3625,32 @@ "smithy.api#httpError": 500 } }, + "com.amazonaws.cleanrooms#JoinOperator": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "name": "OR", + "value": "OR" + }, + { + "name": "AND", + "value": "AND" + } + ] + } + }, + "com.amazonaws.cleanrooms#JoinOperatorsList": { + "type": "list", + "member": { + "target": "com.amazonaws.cleanrooms#JoinOperator" + }, + "traits": { + "smithy.api#length": { + "max": 2 + } + } + }, "com.amazonaws.cleanrooms#JoinRequiredOption": { "type": "string", "traits": { @@ -4317,7 +4364,7 @@ "accountId": { "target": "com.amazonaws.cleanrooms#AccountId", "traits": { - "smithy.api#documentation": "

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

", + "smithy.api#documentation": "

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

", "smithy.api#required": {} } }, @@ -4369,7 +4416,7 @@ "accountId": { "target": "com.amazonaws.cleanrooms#AccountId", "traits": { - "smithy.api#documentation": "

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

", + "smithy.api#documentation": "

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

", "smithy.api#required": {}, "smithy.api#resourceIdentifier": "AccountId" } @@ -4467,7 +4514,7 @@ "collaborationCreatorAccountId": { "target": "com.amazonaws.cleanrooms#AccountId", "traits": { - "smithy.api#documentation": "

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

", + "smithy.api#documentation": "

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

", "smithy.api#required": {} } }, @@ -4660,7 +4707,7 @@ "collaborationCreatorAccountId": { "target": "com.amazonaws.cleanrooms#AccountId", "traits": { - "smithy.api#documentation": "

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

", + "smithy.api#documentation": "

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

", "smithy.api#required": {} } }, @@ -4798,7 +4845,7 @@ } }, "traits": { - "smithy.api#documentation": "

The parameters for an AWS Clean Rooms protected query.

" + "smithy.api#documentation": "

The parameters for an Clean Rooms protected query.

" } }, "com.amazonaws.cleanrooms#ProtectedQueryError": { @@ -4948,8 +4995,7 @@ "smithy.api#documentation": "

The query string to be submitted.

", "smithy.api#length": { "max": 15000 - }, - "smithy.api#required": {} + } } } }, @@ -5244,7 +5290,7 @@ "creatorAccountId": { "target": "com.amazonaws.cleanrooms#AccountId", "traits": { - "smithy.api#documentation": "

The unique account ID for the AWS account that owns the schema.

", + "smithy.api#documentation": "

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

", "smithy.api#required": {} } }, @@ -5333,7 +5379,7 @@ "creatorAccountId": { "target": "com.amazonaws.cleanrooms#AccountId", "traits": { - "smithy.api#documentation": "

The unique account ID for the AWS account that owns the schema.

", + "smithy.api#documentation": "

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

", "smithy.api#required": {} } }, @@ -5461,7 +5507,7 @@ ], "traits": { "aws.iam#actionPermissionDescription": "Grants permission to start protected queries", - "smithy.api#documentation": "

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

", + "smithy.api#documentation": "

Creates a protected query that is started by Clean Rooms .

", "smithy.api#http": { "code": 200, "method": "POST", @@ -5552,12 +5598,12 @@ "glue": { "target": "com.amazonaws.cleanrooms#GlueTableReference", "traits": { - "smithy.api#documentation": "

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

" + "smithy.api#documentation": "

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

" } } }, "traits": { - "smithy.api#documentation": "

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

" + "smithy.api#documentation": "

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

" } }, "com.amazonaws.cleanrooms#TagKey": { @@ -5566,8 +5612,7 @@ "smithy.api#length": { "min": 1, "max": 128 - }, - "smithy.api#pattern": "^(?!aws:).{1,128}$" + } } }, "com.amazonaws.cleanrooms#TagKeys": {