Skip to content

Commit 8f3697f

Browse files
author
awstools
committed
feat(client-qbusiness): Amazon Q Business now supports embedding the Amazon Q Business web experience on third-party websites.
1 parent 3b1ffd3 commit 8f3697f

File tree

6 files changed

+123
-14
lines changed

6 files changed

+123
-14
lines changed

clients/client-qbusiness/src/commands/CreateWebExperienceCommand.ts

+3
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,9 @@ export interface CreateWebExperienceCommandOutput extends CreateWebExperienceRes
4141
* subtitle: "STRING_VALUE",
4242
* welcomeMessage: "STRING_VALUE",
4343
* samplePromptsControlMode: "ENABLED" || "DISABLED",
44+
* origins: [ // WebExperienceOrigins
45+
* "STRING_VALUE",
46+
* ],
4447
* roleArn: "STRING_VALUE",
4548
* tags: [ // Tags
4649
* { // Tag

clients/client-qbusiness/src/commands/GetWebExperienceCommand.ts

+3
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,9 @@ export interface GetWebExperienceCommandOutput extends GetWebExperienceResponse,
5353
* // subtitle: "STRING_VALUE",
5454
* // welcomeMessage: "STRING_VALUE",
5555
* // samplePromptsControlMode: "ENABLED" || "DISABLED",
56+
* // origins: [ // WebExperienceOrigins
57+
* // "STRING_VALUE",
58+
* // ],
5659
* // roleArn: "STRING_VALUE",
5760
* // identityProviderConfiguration: { // IdentityProviderConfiguration Union: only one key present
5861
* // samlConfiguration: { // SamlProviderConfiguration

clients/client-qbusiness/src/commands/UpdateWebExperienceCommand.ts

+3
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,9 @@ export interface UpdateWebExperienceCommandOutput extends UpdateWebExperienceRes
6060
* secretsRole: "STRING_VALUE", // required
6161
* },
6262
* },
63+
* origins: [ // WebExperienceOrigins
64+
* "STRING_VALUE",
65+
* ],
6366
* };
6467
* const command = new UpdateWebExperienceCommand(input);
6568
* const response = await client.send(command);

clients/client-qbusiness/src/models/models_0.ts

+60-7
Original file line numberDiff line numberDiff line change
@@ -760,12 +760,13 @@ export const QAppsControlMode = {
760760
export type QAppsControlMode = (typeof QAppsControlMode)[keyof typeof QAppsControlMode];
761761

762762
/**
763-
* <p>Configuration information about Amazon Q Apps. (preview feature)</p>
763+
* <p>Configuration information about Amazon Q Apps.</p>
764764
* @public
765765
*/
766766
export interface QAppsConfiguration {
767767
/**
768-
* <p>Status information about whether end users can create and use Amazon Q Apps in the web experience.</p>
768+
* <p>Status information about whether end users can create and use Amazon Q Apps in the web
769+
* experience.</p>
769770
* @public
770771
*/
771772
qAppsControlMode: QAppsControlMode | undefined;
@@ -805,7 +806,8 @@ export interface CreateApplicationRequest {
805806

806807
/**
807808
* <p> The Amazon Resource Name (ARN) of an IAM role with permissions to access your Amazon
808-
* CloudWatch logs and metrics.</p>
809+
* CloudWatch logs and metrics. If this property is not specified, Amazon Q Business will create a <a href="https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/using-service-linked-roles.html#slr-permissions">service linked role (SLR)</a> and use it as the
810+
* application's role.</p>
809811
* @public
810812
*/
811813
roleArn?: string;
@@ -4135,6 +4137,22 @@ export interface CreateWebExperienceRequest {
41354137
*/
41364138
samplePromptsControlMode?: WebExperienceSamplePromptsControlMode;
41374139

4140+
/**
4141+
* <p>Sets the website domain origins that
4142+
* are allowed to embed the Amazon Q Business web experience.
4143+
*
4144+
* The <i>domain origin</i> refers to the
4145+
* base URL for accessing a website including the protocol
4146+
* (<code>http/https</code>), the domain name, and the port number (if specified).
4147+
* </p>
4148+
* <note>
4149+
* <p>You must only submit a <i>base URL</i> and
4150+
* not a full path. For example, <code>https://docs.aws.amazon.com</code>.</p>
4151+
* </note>
4152+
* @public
4153+
*/
4154+
origins?: string[];
4155+
41384156
/**
41394157
* <p>The Amazon Resource Name (ARN) of the service role attached to your web
41404158
* experience.</p>
@@ -4395,6 +4413,18 @@ export interface GetWebExperienceResponse {
43954413
*/
43964414
samplePromptsControlMode?: WebExperienceSamplePromptsControlMode;
43974415

4416+
/**
4417+
* <p>Gets the website domain origins that
4418+
* are allowed to embed the Amazon Q Business web experience.
4419+
*
4420+
* The <i>domain origin</i> refers to the
4421+
* base URL for accessing a website including the protocol
4422+
* (<code>http/https</code>), the domain name, and the port number (if specified).
4423+
* </p>
4424+
* @public
4425+
*/
4426+
origins?: string[];
4427+
43984428
/**
43994429
* <p> The Amazon Resource Name (ARN) of the service role attached to your web
44004430
* experience.</p>
@@ -4571,6 +4601,29 @@ export interface UpdateWebExperienceRequest {
45714601
* @public
45724602
*/
45734603
identityProviderConfiguration?: IdentityProviderConfiguration;
4604+
4605+
/**
4606+
* <p>Updates the website domain origins that
4607+
* are allowed to embed the Amazon Q Business web experience.
4608+
*
4609+
* The <i>domain origin</i> refers to the
4610+
* <i>base URL</i> for accessing a website including the protocol
4611+
* (<code>http/https</code>), the domain name, and the port number (if specified).</p>
4612+
* <note>
4613+
* <ul>
4614+
* <li>
4615+
* <p>Any values except <code>null</code> submitted as part of this
4616+
* update will replace all previous values.</p>
4617+
* </li>
4618+
* <li>
4619+
* <p>You must only submit a <i>base URL</i> and
4620+
* not a full path. For example, <code>https://docs.aws.amazon.com</code>.</p>
4621+
* </li>
4622+
* </ul>
4623+
* </note>
4624+
* @public
4625+
*/
4626+
origins?: string[];
45744627
}
45754628

45764629
/**
@@ -6010,7 +6063,7 @@ export const ResponseScope = {
60106063
export type ResponseScope = (typeof ResponseScope)[keyof typeof ResponseScope];
60116064

60126065
/**
6013-
* <p>Provides information about users and groups associated with a topic control
6066+
* <p>Provides information about users and group names associated with a topic control
60146067
* rule.</p>
60156068
* @public
60166069
*/
@@ -6022,7 +6075,7 @@ export interface UsersAndGroups {
60226075
userIds?: string[];
60236076

60246077
/**
6025-
* <p>The user groups associated with a topic control rule.</p>
6078+
* <p>The user group names associated with a topic control rule.</p>
60266079
* @public
60276080
*/
60286081
userGroups?: string[];
@@ -7263,7 +7316,7 @@ export interface ChatSyncInput {
72637316
userId?: string;
72647317

72657318
/**
7266-
* <p>The groups that a user associated with the chat input belongs to.</p>
7319+
* <p>The group names that a user associated with the chat input belongs to.</p>
72677320
* @public
72687321
*/
72697322
userGroups?: string[];
@@ -7559,7 +7612,7 @@ export interface ChatInput {
75597612
userId?: string;
75607613

75617614
/**
7562-
* <p>The groups that a user associated with the chat input belongs to.</p>
7615+
* <p>The group names that a user associated with the chat input belongs to.</p>
75637616
* @public
75647617
*/
75657618
userGroups?: string[];

clients/client-qbusiness/src/protocols/Aws_restJson1.ts

+7
Original file line numberDiff line numberDiff line change
@@ -541,6 +541,7 @@ export const se_CreateWebExperienceCommand = async (
541541
take(input, {
542542
clientToken: [true, (_) => _ ?? generateIdempotencyToken()],
543543
identityProviderConfiguration: (_) => _json(_),
544+
origins: (_) => _json(_),
544545
roleArn: [],
545546
samplePromptsControlMode: [],
546547
subtitle: [],
@@ -1489,6 +1490,7 @@ export const se_UpdateWebExperienceCommand = async (
14891490
take(input, {
14901491
authenticationConfiguration: (_) => _json(_),
14911492
identityProviderConfiguration: (_) => _json(_),
1493+
origins: (_) => _json(_),
14921494
roleArn: [],
14931495
samplePromptsControlMode: [],
14941496
subtitle: [],
@@ -2166,6 +2168,7 @@ export const de_GetWebExperienceCommand = async (
21662168
defaultEndpoint: __expectString,
21672169
error: _json,
21682170
identityProviderConfiguration: (_) => _json(__expectUnion(_)),
2171+
origins: _json,
21692172
roleArn: __expectString,
21702173
samplePromptsControlMode: __expectString,
21712174
status: __expectString,
@@ -3488,6 +3491,8 @@ const se_MessageUsefulnessFeedback = (input: MessageUsefulnessFeedback, context:
34883491

34893492
// se_WebExperienceAuthConfiguration omitted.
34903493

3494+
// se_WebExperienceOrigins omitted.
3495+
34913496
/**
34923497
* deserializeAws_restJson1ActionExecution
34933498
*/
@@ -4158,6 +4163,8 @@ const de_WebExperience = (output: any, context: __SerdeContext): WebExperience =
41584163

41594164
// de_WebExperienceAuthConfiguration omitted.
41604165

4166+
// de_WebExperienceOrigins omitted.
4167+
41614168
/**
41624169
* deserializeAws_restJson1WebExperiences
41634170
*/

codegen/sdk-codegen/aws-models/qbusiness.json

+47-7
Original file line numberDiff line numberDiff line change
@@ -1312,7 +1312,7 @@
13121312
"userGroups": {
13131313
"target": "com.amazonaws.qbusiness#UserGroups",
13141314
"traits": {
1315-
"smithy.api#documentation": "<p>The groups that a user associated with the chat input belongs to.</p>",
1315+
"smithy.api#documentation": "<p>The group names that a user associated with the chat input belongs to.</p>",
13161316
"smithy.api#httpQuery": "userGroups"
13171317
}
13181318
},
@@ -1546,7 +1546,7 @@
15461546
"userGroups": {
15471547
"target": "com.amazonaws.qbusiness#UserGroups",
15481548
"traits": {
1549-
"smithy.api#documentation": "<p>The groups that a user associated with the chat input belongs to.</p>",
1549+
"smithy.api#documentation": "<p>The group names that a user associated with the chat input belongs to.</p>",
15501550
"smithy.api#httpQuery": "userGroups"
15511551
}
15521552
},
@@ -1958,7 +1958,7 @@
19581958
"roleArn": {
19591959
"target": "com.amazonaws.qbusiness#RoleArn",
19601960
"traits": {
1961-
"smithy.api#documentation": "<p> The Amazon Resource Name (ARN) of an IAM role with permissions to access your Amazon\n CloudWatch logs and metrics.</p>"
1961+
"smithy.api#documentation": "<p> The Amazon Resource Name (ARN) of an IAM role with permissions to access your Amazon\n CloudWatch logs and metrics. If this property is not specified, Amazon Q Business will create a <a href=\"https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/using-service-linked-roles.html#slr-permissions\">service linked role (SLR)</a> and use it as the\n application's role.</p>"
19621962
}
19631963
},
19641964
"identityType": {
@@ -2741,6 +2741,12 @@
27412741
"smithy.api#documentation": "<p>Determines whether sample prompts are enabled in the web experience for an end\n user.</p>"
27422742
}
27432743
},
2744+
"origins": {
2745+
"target": "com.amazonaws.qbusiness#WebExperienceOrigins",
2746+
"traits": {
2747+
"smithy.api#documentation": "<p>Sets the website domain origins that \n are allowed to embed the Amazon Q Business web experience.\n \n The <i>domain origin</i> refers to the \n base URL for accessing a website including the protocol \n (<code>http/https</code>), the domain name, and the port number (if specified).\n </p>\n <note>\n <p>You must only submit a <i>base URL</i> and \n not a full path. For example, <code>https://docs.aws.amazon.com</code>.</p>\n </note>"
2748+
}
2749+
},
27442750
"roleArn": {
27452751
"target": "com.amazonaws.qbusiness#RoleArn",
27462752
"traits": {
@@ -6339,6 +6345,12 @@
63396345
"smithy.api#documentation": "<p>Determines whether sample prompts are enabled in the web experience for an end\n user.</p>"
63406346
}
63416347
},
6348+
"origins": {
6349+
"target": "com.amazonaws.qbusiness#WebExperienceOrigins",
6350+
"traits": {
6351+
"smithy.api#documentation": "<p>Gets the website domain origins that \n are allowed to embed the Amazon Q Business web experience.\n \n The <i>domain origin</i> refers to the \n base URL for accessing a website including the protocol \n (<code>http/https</code>), the domain name, and the port number (if specified).\n </p>"
6352+
}
6353+
},
63426354
"roleArn": {
63436355
"target": "com.amazonaws.qbusiness#RoleArn",
63446356
"traits": {
@@ -8676,6 +8688,16 @@
86768688
"smithy.api#documentation": "<p>Information about the OIDC-compliant identity provider (IdP) used to authenticate end\n users of an Amazon Q Business web experience.</p>"
86778689
}
86788690
},
8691+
"com.amazonaws.qbusiness#Origin": {
8692+
"type": "string",
8693+
"traits": {
8694+
"smithy.api#length": {
8695+
"min": 1,
8696+
"max": 256
8697+
},
8698+
"smithy.api#pattern": "^(http://|https://)[a-zA-Z0-9-_.]+(?::[0-9]{1,5})?$"
8699+
}
8700+
},
86798701
"com.amazonaws.qbusiness#Payload": {
86808702
"type": "string",
86818703
"traits": {
@@ -9253,13 +9275,13 @@
92539275
"qAppsControlMode": {
92549276
"target": "com.amazonaws.qbusiness#QAppsControlMode",
92559277
"traits": {
9256-
"smithy.api#documentation": "<p>Status information about whether end users can create and use Amazon Q Apps in the web experience.</p>",
9278+
"smithy.api#documentation": "<p>Status information about whether end users can create and use Amazon Q Apps in the web\n experience.</p>",
92579279
"smithy.api#required": {}
92589280
}
92599281
}
92609282
},
92619283
"traits": {
9262-
"smithy.api#documentation": "<p>Configuration information about Amazon Q Apps. (preview feature)</p>"
9284+
"smithy.api#documentation": "<p>Configuration information about Amazon Q Apps.</p>"
92639285
}
92649286
},
92659287
"com.amazonaws.qbusiness#QAppsControlMode": {
@@ -11402,6 +11424,12 @@
1140211424
"traits": {
1140311425
"smithy.api#documentation": "<p>Information about the identity provider (IdP) used to authenticate end users of an\n Amazon Q Business web experience.</p>"
1140411426
}
11427+
},
11428+
"origins": {
11429+
"target": "com.amazonaws.qbusiness#WebExperienceOrigins",
11430+
"traits": {
11431+
"smithy.api#documentation": "<p>Updates the website domain origins that \n are allowed to embed the Amazon Q Business web experience.\n \n The <i>domain origin</i> refers to the \n <i>base URL</i> for accessing a website including the protocol \n (<code>http/https</code>), the domain name, and the port number (if specified).</p>\n <note>\n <ul>\n <li>\n <p>Any values except <code>null</code> submitted as part of this \n update will replace all previous values.</p>\n </li>\n <li>\n <p>You must only submit a <i>base URL</i> and \n not a full path. For example, <code>https://docs.aws.amazon.com</code>.</p>\n </li>\n </ul>\n </note>"
11432+
}
1140511433
}
1140611434
},
1140711435
"traits": {
@@ -11501,12 +11529,12 @@
1150111529
"userGroups": {
1150211530
"target": "com.amazonaws.qbusiness#UserGroups",
1150311531
"traits": {
11504-
"smithy.api#documentation": "<p>The user groups associated with a topic control rule.</p>"
11532+
"smithy.api#documentation": "<p>The user group names associated with a topic control rule.</p>"
1150511533
}
1150611534
}
1150711535
},
1150811536
"traits": {
11509-
"smithy.api#documentation": "<p>Provides information about users and groups associated with a topic control\n rule.</p>"
11537+
"smithy.api#documentation": "<p>Provides information about users and group names associated with a topic control\n rule.</p>"
1151011538
}
1151111539
},
1151211540
"com.amazonaws.qbusiness#ValidationException": {
@@ -11659,6 +11687,18 @@
1165911687
"smithy.api#pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$"
1166011688
}
1166111689
},
11690+
"com.amazonaws.qbusiness#WebExperienceOrigins": {
11691+
"type": "list",
11692+
"member": {
11693+
"target": "com.amazonaws.qbusiness#Origin"
11694+
},
11695+
"traits": {
11696+
"smithy.api#length": {
11697+
"min": 0,
11698+
"max": 10
11699+
}
11700+
}
11701+
},
1166211702
"com.amazonaws.qbusiness#WebExperienceResource": {
1166311703
"type": "resource",
1166411704
"identifiers": {

0 commit comments

Comments
 (0)