Skip to content

Commit

Permalink
feat(client-connect): This release updates a set of Amazon Connect AP…
Browse files Browse the repository at this point in the history
…Is that provides the ability to integrate third party applications in the Amazon Connect agent workspace.
  • Loading branch information
awstools committed Sep 26, 2023
1 parent ae29e55 commit 970fe06
Show file tree
Hide file tree
Showing 20 changed files with 807 additions and 115 deletions.
8 changes: 8 additions & 0 deletions clients/client-connect/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -1228,6 +1228,14 @@ ListSecurityKeys

[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/classes/listsecuritykeyscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/listsecuritykeyscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/listsecuritykeyscommandoutput.html)

</details>
<details>
<summary>
ListSecurityProfileApplications
</summary>

[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/classes/listsecurityprofileapplicationscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/listsecurityprofileapplicationscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/listsecurityprofileapplicationscommandoutput.html)

</details>
<details>
<summary>
Expand Down
23 changes: 23 additions & 0 deletions clients/client-connect/src/Connect.ts
Original file line number Diff line number Diff line change
Expand Up @@ -585,6 +585,11 @@ import {
ListSecurityKeysCommandInput,
ListSecurityKeysCommandOutput,
} from "./commands/ListSecurityKeysCommand";
import {
ListSecurityProfileApplicationsCommand,
ListSecurityProfileApplicationsCommandInput,
ListSecurityProfileApplicationsCommandOutput,
} from "./commands/ListSecurityProfileApplicationsCommand";
import {
ListSecurityProfilePermissionsCommand,
ListSecurityProfilePermissionsCommandInput,
Expand Down Expand Up @@ -1101,6 +1106,7 @@ const commands = {
ListRoutingProfilesCommand,
ListRulesCommand,
ListSecurityKeysCommand,
ListSecurityProfileApplicationsCommand,
ListSecurityProfilePermissionsCommand,
ListSecurityProfilesCommand,
ListTagsForResourceCommand,
Expand Down Expand Up @@ -3171,6 +3177,23 @@ export interface Connect {
cb: (err: any, data?: ListSecurityKeysCommandOutput) => void
): void;

/**
* @see {@link ListSecurityProfileApplicationsCommand}
*/
listSecurityProfileApplications(
args: ListSecurityProfileApplicationsCommandInput,
options?: __HttpHandlerOptions
): Promise<ListSecurityProfileApplicationsCommandOutput>;
listSecurityProfileApplications(
args: ListSecurityProfileApplicationsCommandInput,
cb: (err: any, data?: ListSecurityProfileApplicationsCommandOutput) => void
): void;
listSecurityProfileApplications(
args: ListSecurityProfileApplicationsCommandInput,
options: __HttpHandlerOptions,
cb: (err: any, data?: ListSecurityProfileApplicationsCommandOutput) => void
): void;

/**
* @see {@link ListSecurityProfilePermissionsCommand}
*/
Expand Down
6 changes: 6 additions & 0 deletions clients/client-connect/src/ConnectClient.ts
Original file line number Diff line number Diff line change
Expand Up @@ -384,6 +384,10 @@ import {
} from "./commands/ListRoutingProfilesCommand";
import { ListRulesCommandInput, ListRulesCommandOutput } from "./commands/ListRulesCommand";
import { ListSecurityKeysCommandInput, ListSecurityKeysCommandOutput } from "./commands/ListSecurityKeysCommand";
import {
ListSecurityProfileApplicationsCommandInput,
ListSecurityProfileApplicationsCommandOutput,
} from "./commands/ListSecurityProfileApplicationsCommand";
import {
ListSecurityProfilePermissionsCommandInput,
ListSecurityProfilePermissionsCommandOutput,
Expand Down Expand Up @@ -764,6 +768,7 @@ export type ServiceInputTypes =
| ListRoutingProfilesCommandInput
| ListRulesCommandInput
| ListSecurityKeysCommandInput
| ListSecurityProfileApplicationsCommandInput
| ListSecurityProfilePermissionsCommandInput
| ListSecurityProfilesCommandInput
| ListTagsForResourceCommandInput
Expand Down Expand Up @@ -978,6 +983,7 @@ export type ServiceOutputTypes =
| ListRoutingProfilesCommandOutput
| ListRulesCommandOutput
| ListSecurityKeysCommandOutput
| ListSecurityProfileApplicationsCommandOutput
| ListSecurityProfilePermissionsCommandOutput
| ListSecurityProfilesCommandOutput
| ListTagsForResourceCommandOutput
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ export interface CreateIntegrationAssociationCommandOutput
* const client = new ConnectClient(config);
* const input = { // CreateIntegrationAssociationRequest
* InstanceId: "STRING_VALUE", // required
* IntegrationType: "EVENT" || "VOICE_ID" || "PINPOINT_APP" || "WISDOM_ASSISTANT" || "WISDOM_KNOWLEDGE_BASE" || "CASES_DOMAIN", // required
* IntegrationType: "EVENT" || "VOICE_ID" || "PINPOINT_APP" || "WISDOM_ASSISTANT" || "WISDOM_KNOWLEDGE_BASE" || "CASES_DOMAIN" || "APPLICATION", // required
* IntegrationArn: "STRING_VALUE", // required
* SourceApplicationUrl: "STRING_VALUE",
* SourceApplicationName: "STRING_VALUE",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,14 @@ export interface CreateSecurityProfileCommandOutput extends CreateSecurityProfil
* TagRestrictedResources: [ // TagRestrictedResourceList
* "STRING_VALUE",
* ],
* Applications: [ // Applications
* { // Application
* Namespace: "STRING_VALUE",
* ApplicationPermissions: [ // ApplicationPermissions
* "STRING_VALUE",
* ],
* },
* ],
* };
* const command = new CreateSecurityProfileCommand(input);
* const response = await client.send(command);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,7 @@ import {
} from "@smithy/types";

import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient";
import { DescribeVocabularyRequest } from "../models/models_0";
import { DescribeVocabularyResponse } from "../models/models_1";
import { DescribeVocabularyRequest, DescribeVocabularyResponse } from "../models/models_1";
import { de_DescribeVocabularyCommand, se_DescribeVocabularyCommand } from "../protocols/Aws_restJson1";

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ export interface ListIntegrationAssociationsCommandOutput
* const client = new ConnectClient(config);
* const input = { // ListIntegrationAssociationsRequest
* InstanceId: "STRING_VALUE", // required
* IntegrationType: "EVENT" || "VOICE_ID" || "PINPOINT_APP" || "WISDOM_ASSISTANT" || "WISDOM_KNOWLEDGE_BASE" || "CASES_DOMAIN",
* IntegrationType: "EVENT" || "VOICE_ID" || "PINPOINT_APP" || "WISDOM_ASSISTANT" || "WISDOM_KNOWLEDGE_BASE" || "CASES_DOMAIN" || "APPLICATION",
* NextToken: "STRING_VALUE",
* MaxResults: Number("int"),
* };
Expand All @@ -64,7 +64,7 @@ export interface ListIntegrationAssociationsCommandOutput
* // IntegrationAssociationId: "STRING_VALUE",
* // IntegrationAssociationArn: "STRING_VALUE",
* // InstanceId: "STRING_VALUE",
* // IntegrationType: "EVENT" || "VOICE_ID" || "PINPOINT_APP" || "WISDOM_ASSISTANT" || "WISDOM_KNOWLEDGE_BASE" || "CASES_DOMAIN",
* // IntegrationType: "EVENT" || "VOICE_ID" || "PINPOINT_APP" || "WISDOM_ASSISTANT" || "WISDOM_KNOWLEDGE_BASE" || "CASES_DOMAIN" || "APPLICATION",
* // IntegrationArn: "STRING_VALUE",
* // SourceApplicationUrl: "STRING_VALUE",
* // SourceApplicationName: "STRING_VALUE",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,8 +46,9 @@ export interface ListPhoneNumbersCommandOutput extends ListPhoneNumbersResponse,
* <li>
* <p>We recommend using <a href="https://docs.aws.amazon.com/connect/latest/APIReference/API_ListPhoneNumbersV2.html">ListPhoneNumbersV2</a> to
* return phone number types. ListPhoneNumbers doesn't support number types <code>UIFN</code>,
* <code>SHARED</code>, <code>THIRD_PARTY_TF</code>, and <code>THIRD_PARTY_DID</code>. While it returns
* numbers of those types, it incorrectly lists them as <code>TOLL_FREE</code> or <code>DID</code>. </p>
* <code>SHARED</code>, <code>THIRD_PARTY_TF</code>, and <code>THIRD_PARTY_DID</code>. While it
* returns numbers of those types, it incorrectly lists them as <code>TOLL_FREE</code> or
* <code>DID</code>. </p>
* </li>
* <li>
* <p>The phone number <code>Arn</code> value that is returned from each of the items in the
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,184 @@
// smithy-typescript generated code
import { EndpointParameterInstructions, getEndpointPlugin } from "@smithy/middleware-endpoint";
import { getSerdePlugin } from "@smithy/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http";
import { Command as $Command } from "@smithy/smithy-client";
import {
FinalizeHandlerArguments,
Handler,
HandlerExecutionContext,
HttpHandlerOptions as __HttpHandlerOptions,
MetadataBearer as __MetadataBearer,
MiddlewareStack,
SerdeContext as __SerdeContext,
SMITHY_CONTEXT_KEY,
} from "@smithy/types";

import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient";
import { ListSecurityProfileApplicationsRequest, ListSecurityProfileApplicationsResponse } from "../models/models_1";
import {
de_ListSecurityProfileApplicationsCommand,
se_ListSecurityProfileApplicationsCommand,
} from "../protocols/Aws_restJson1";

/**
* @public
*/
export { __MetadataBearer, $Command };
/**
* @public
*
* The input for {@link ListSecurityProfileApplicationsCommand}.
*/
export interface ListSecurityProfileApplicationsCommandInput extends ListSecurityProfileApplicationsRequest {}
/**
* @public
*
* The output of {@link ListSecurityProfileApplicationsCommand}.
*/
export interface ListSecurityProfileApplicationsCommandOutput
extends ListSecurityProfileApplicationsResponse,
__MetadataBearer {}

/**
* @public
* <p>Returns a list of third party applications in a specific security profile.</p>
* @example
* Use a bare-bones client and the command you need to make an API call.
* ```javascript
* import { ConnectClient, ListSecurityProfileApplicationsCommand } from "@aws-sdk/client-connect"; // ES Modules import
* // const { ConnectClient, ListSecurityProfileApplicationsCommand } = require("@aws-sdk/client-connect"); // CommonJS import
* const client = new ConnectClient(config);
* const input = { // ListSecurityProfileApplicationsRequest
* SecurityProfileId: "STRING_VALUE", // required
* InstanceId: "STRING_VALUE", // required
* NextToken: "STRING_VALUE",
* MaxResults: Number("int"),
* };
* const command = new ListSecurityProfileApplicationsCommand(input);
* const response = await client.send(command);
* // { // ListSecurityProfileApplicationsResponse
* // Applications: [ // Applications
* // { // Application
* // Namespace: "STRING_VALUE",
* // ApplicationPermissions: [ // ApplicationPermissions
* // "STRING_VALUE",
* // ],
* // },
* // ],
* // NextToken: "STRING_VALUE",
* // };
*
* ```
*
* @param ListSecurityProfileApplicationsCommandInput - {@link ListSecurityProfileApplicationsCommandInput}
* @returns {@link ListSecurityProfileApplicationsCommandOutput}
* @see {@link ListSecurityProfileApplicationsCommandInput} for command's `input` shape.
* @see {@link ListSecurityProfileApplicationsCommandOutput} for command's `response` shape.
* @see {@link ConnectClientResolvedConfig | config} for ConnectClient's `config` shape.
*
* @throws {@link InternalServiceException} (server fault)
* <p>Request processing failed because of an error or failure with the service.</p>
*
* @throws {@link InvalidParameterException} (client fault)
* <p>One or more of the specified parameters are not valid.</p>
*
* @throws {@link InvalidRequestException} (client fault)
* <p>The request is not valid.</p>
*
* @throws {@link ResourceNotFoundException} (client fault)
* <p>The specified resource was not found.</p>
*
* @throws {@link ThrottlingException} (client fault)
* <p>The throttling limit has been exceeded.</p>
*
* @throws {@link ConnectServiceException}
* <p>Base exception class for all service exceptions from Connect service.</p>
*
*/
export class ListSecurityProfileApplicationsCommand extends $Command<
ListSecurityProfileApplicationsCommandInput,
ListSecurityProfileApplicationsCommandOutput,
ConnectClientResolvedConfig
> {
// Start section: command_properties
// End section: command_properties

public static getEndpointParameterInstructions(): EndpointParameterInstructions {
return {
UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
Endpoint: { type: "builtInParams", name: "endpoint" },
Region: { type: "builtInParams", name: "region" },
UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
};
}

/**
* @public
*/
constructor(readonly input: ListSecurityProfileApplicationsCommandInput) {
// Start section: command_constructor
super();
// End section: command_constructor
}

/**
* @internal
*/
resolveMiddleware(
clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>,
configuration: ConnectClientResolvedConfig,
options?: __HttpHandlerOptions
): Handler<ListSecurityProfileApplicationsCommandInput, ListSecurityProfileApplicationsCommandOutput> {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
this.middlewareStack.use(
getEndpointPlugin(configuration, ListSecurityProfileApplicationsCommand.getEndpointParameterInstructions())
);

const stack = clientStack.concat(this.middlewareStack);

const { logger } = configuration;
const clientName = "ConnectClient";
const commandName = "ListSecurityProfileApplicationsCommand";
const handlerExecutionContext: HandlerExecutionContext = {
logger,
clientName,
commandName,
inputFilterSensitiveLog: (_: any) => _,
outputFilterSensitiveLog: (_: any) => _,
[SMITHY_CONTEXT_KEY]: {
service: "AmazonConnectService",
operation: "ListSecurityProfileApplications",
},
};
const { requestHandler } = configuration;
return stack.resolve(
(request: FinalizeHandlerArguments<any>) =>
requestHandler.handle(request.request as __HttpRequest, options || {}),
handlerExecutionContext
);
}

/**
* @internal
*/
private serialize(
input: ListSecurityProfileApplicationsCommandInput,
context: __SerdeContext
): Promise<__HttpRequest> {
return se_ListSecurityProfileApplicationsCommand(input, context);
}

/**
* @internal
*/
private deserialize(
output: __HttpResponse,
context: __SerdeContext
): Promise<ListSecurityProfileApplicationsCommandOutput> {
return de_ListSecurityProfileApplicationsCommand(output, context);
}

// Start section: command_body_extra
// End section: command_body_extra
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ import {
} from "@smithy/types";

import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient";
import { UpdatePhoneNumberRequest, UpdatePhoneNumberResponse } from "../models/models_1";
import { UpdatePhoneNumberRequest, UpdatePhoneNumberResponse } from "../models/models_2";
import { de_UpdatePhoneNumberCommand, se_UpdatePhoneNumberCommand } from "../protocols/Aws_restJson1";

/**
Expand Down
3 changes: 1 addition & 2 deletions clients/client-connect/src/commands/UpdatePromptCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,7 @@ import {
} from "@smithy/types";

import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient";
import { UpdatePromptRequest } from "../models/models_1";
import { UpdatePromptResponse } from "../models/models_2";
import { UpdatePromptRequest, UpdatePromptResponse } from "../models/models_2";
import { de_UpdatePromptCommand, se_UpdatePromptCommand } from "../protocols/Aws_restJson1";

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,14 @@ export interface UpdateSecurityProfileCommandOutput extends __MetadataBearer {}
* TagRestrictedResources: [ // TagRestrictedResourceList
* "STRING_VALUE",
* ],
* Applications: [ // Applications
* { // Application
* Namespace: "STRING_VALUE",
* ApplicationPermissions: [ // ApplicationPermissions
* "STRING_VALUE",
* ],
* },
* ],
* };
* const command = new UpdateSecurityProfileCommand(input);
* const response = await client.send(command);
Expand Down
1 change: 1 addition & 0 deletions clients/client-connect/src/commands/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,7 @@ export * from "./ListRoutingProfileQueuesCommand";
export * from "./ListRoutingProfilesCommand";
export * from "./ListRulesCommand";
export * from "./ListSecurityKeysCommand";
export * from "./ListSecurityProfileApplicationsCommand";
export * from "./ListSecurityProfilePermissionsCommand";
export * from "./ListSecurityProfilesCommand";
export * from "./ListTagsForResourceCommand";
Expand Down
Loading

0 comments on commit 970fe06

Please sign in to comment.