diff --git a/clients/client-appintegrations/README.md b/clients/client-appintegrations/README.md index fb0b58839f47..ac111c962f2c 100644 --- a/clients/client-appintegrations/README.md +++ b/clients/client-appintegrations/README.md @@ -232,6 +232,14 @@ CreateEventIntegration [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/appintegrations/command/CreateEventIntegrationCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-appintegrations/Interface/CreateEventIntegrationCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-appintegrations/Interface/CreateEventIntegrationCommandOutput/) + +
+ +DeleteApplication + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/appintegrations/command/DeleteApplicationCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-appintegrations/Interface/DeleteApplicationCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-appintegrations/Interface/DeleteApplicationCommandOutput/) +
@@ -272,6 +280,14 @@ GetEventIntegration [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/appintegrations/command/GetEventIntegrationCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-appintegrations/Interface/GetEventIntegrationCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-appintegrations/Interface/GetEventIntegrationCommandOutput/) +
+
+ +ListApplicationAssociations + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/appintegrations/command/ListApplicationAssociationsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-appintegrations/Interface/ListApplicationAssociationsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-appintegrations/Interface/ListApplicationAssociationsCommandOutput/) +
diff --git a/clients/client-appintegrations/src/AppIntegrations.ts b/clients/client-appintegrations/src/AppIntegrations.ts index b3a4156356e3..ebaa42fa9613 100644 --- a/clients/client-appintegrations/src/AppIntegrations.ts +++ b/clients/client-appintegrations/src/AppIntegrations.ts @@ -18,6 +18,11 @@ import { CreateEventIntegrationCommandInput, CreateEventIntegrationCommandOutput, } from "./commands/CreateEventIntegrationCommand"; +import { + DeleteApplicationCommand, + DeleteApplicationCommandInput, + DeleteApplicationCommandOutput, +} from "./commands/DeleteApplicationCommand"; import { DeleteDataIntegrationCommand, DeleteDataIntegrationCommandInput, @@ -43,6 +48,11 @@ import { GetEventIntegrationCommandInput, GetEventIntegrationCommandOutput, } from "./commands/GetEventIntegrationCommand"; +import { + ListApplicationAssociationsCommand, + ListApplicationAssociationsCommandInput, + ListApplicationAssociationsCommandOutput, +} from "./commands/ListApplicationAssociationsCommand"; import { ListApplicationsCommand, ListApplicationsCommandInput, @@ -99,11 +109,13 @@ const commands = { CreateApplicationCommand, CreateDataIntegrationCommand, CreateEventIntegrationCommand, + DeleteApplicationCommand, DeleteDataIntegrationCommand, DeleteEventIntegrationCommand, GetApplicationCommand, GetDataIntegrationCommand, GetEventIntegrationCommand, + ListApplicationAssociationsCommand, ListApplicationsCommand, ListDataIntegrationAssociationsCommand, ListDataIntegrationsCommand, @@ -169,6 +181,23 @@ export interface AppIntegrations { cb: (err: any, data?: CreateEventIntegrationCommandOutput) => void ): void; + /** + * @see {@link DeleteApplicationCommand} + */ + deleteApplication( + args: DeleteApplicationCommandInput, + options?: __HttpHandlerOptions + ): Promise; + deleteApplication( + args: DeleteApplicationCommandInput, + cb: (err: any, data?: DeleteApplicationCommandOutput) => void + ): void; + deleteApplication( + args: DeleteApplicationCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DeleteApplicationCommandOutput) => void + ): void; + /** * @see {@link DeleteDataIntegrationCommand} */ @@ -251,6 +280,23 @@ export interface AppIntegrations { cb: (err: any, data?: GetEventIntegrationCommandOutput) => void ): void; + /** + * @see {@link ListApplicationAssociationsCommand} + */ + listApplicationAssociations( + args: ListApplicationAssociationsCommandInput, + options?: __HttpHandlerOptions + ): Promise; + listApplicationAssociations( + args: ListApplicationAssociationsCommandInput, + cb: (err: any, data?: ListApplicationAssociationsCommandOutput) => void + ): void; + listApplicationAssociations( + args: ListApplicationAssociationsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListApplicationAssociationsCommandOutput) => void + ): void; + /** * @see {@link ListApplicationsCommand} */ diff --git a/clients/client-appintegrations/src/AppIntegrationsClient.ts b/clients/client-appintegrations/src/AppIntegrationsClient.ts index 85e10b67c06f..b28984b64c6c 100644 --- a/clients/client-appintegrations/src/AppIntegrationsClient.ts +++ b/clients/client-appintegrations/src/AppIntegrationsClient.ts @@ -57,6 +57,7 @@ import { CreateEventIntegrationCommandInput, CreateEventIntegrationCommandOutput, } from "./commands/CreateEventIntegrationCommand"; +import { DeleteApplicationCommandInput, DeleteApplicationCommandOutput } from "./commands/DeleteApplicationCommand"; import { DeleteDataIntegrationCommandInput, DeleteDataIntegrationCommandOutput, @@ -71,6 +72,10 @@ import { GetEventIntegrationCommandInput, GetEventIntegrationCommandOutput, } from "./commands/GetEventIntegrationCommand"; +import { + ListApplicationAssociationsCommandInput, + ListApplicationAssociationsCommandOutput, +} from "./commands/ListApplicationAssociationsCommand"; import { ListApplicationsCommandInput, ListApplicationsCommandOutput } from "./commands/ListApplicationsCommand"; import { ListDataIntegrationAssociationsCommandInput, @@ -121,11 +126,13 @@ export type ServiceInputTypes = | CreateApplicationCommandInput | CreateDataIntegrationCommandInput | CreateEventIntegrationCommandInput + | DeleteApplicationCommandInput | DeleteDataIntegrationCommandInput | DeleteEventIntegrationCommandInput | GetApplicationCommandInput | GetDataIntegrationCommandInput | GetEventIntegrationCommandInput + | ListApplicationAssociationsCommandInput | ListApplicationsCommandInput | ListDataIntegrationAssociationsCommandInput | ListDataIntegrationsCommandInput @@ -145,11 +152,13 @@ export type ServiceOutputTypes = | CreateApplicationCommandOutput | CreateDataIntegrationCommandOutput | CreateEventIntegrationCommandOutput + | DeleteApplicationCommandOutput | DeleteDataIntegrationCommandOutput | DeleteEventIntegrationCommandOutput | GetApplicationCommandOutput | GetDataIntegrationCommandOutput | GetEventIntegrationCommandOutput + | ListApplicationAssociationsCommandOutput | ListApplicationsCommandOutput | ListDataIntegrationAssociationsCommandOutput | ListDataIntegrationsCommandOutput diff --git a/clients/client-appintegrations/src/commands/CreateApplicationCommand.ts b/clients/client-appintegrations/src/commands/CreateApplicationCommand.ts index dade288422fd..64e19aaefa6a 100644 --- a/clients/client-appintegrations/src/commands/CreateApplicationCommand.ts +++ b/clients/client-appintegrations/src/commands/CreateApplicationCommand.ts @@ -74,6 +74,9 @@ export interface CreateApplicationCommandOutput extends CreateApplicationRespons * Tags: { // TagMap * "": "STRING_VALUE", * }, + * Permissions: [ // PermissionList + * "STRING_VALUE", + * ], * }; * const command = new CreateApplicationCommand(input); * const response = await client.send(command); @@ -108,6 +111,9 @@ export interface CreateApplicationCommandOutput extends CreateApplicationRespons * @throws {@link ThrottlingException} (client fault) *

The throttling limit has been exceeded.

* + * @throws {@link UnsupportedOperationException} (client fault) + *

The operation is not supported.

+ * * @throws {@link AppIntegrationsServiceException} *

Base exception class for all service exceptions from AppIntegrations service.

* diff --git a/clients/client-appintegrations/src/commands/DeleteApplicationCommand.ts b/clients/client-appintegrations/src/commands/DeleteApplicationCommand.ts new file mode 100644 index 000000000000..b28b97538fa6 --- /dev/null +++ b/clients/client-appintegrations/src/commands/DeleteApplicationCommand.ts @@ -0,0 +1,152 @@ +// 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 { AppIntegrationsClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../AppIntegrationsClient"; +import { DeleteApplicationRequest, DeleteApplicationResponse } from "../models/models_0"; +import { de_DeleteApplicationCommand, se_DeleteApplicationCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link DeleteApplicationCommand}. + */ +export interface DeleteApplicationCommandInput extends DeleteApplicationRequest {} +/** + * @public + * + * The output of {@link DeleteApplicationCommand}. + */ +export interface DeleteApplicationCommandOutput extends DeleteApplicationResponse, __MetadataBearer {} + +/** + * @public + *

Deletes the Application. Only Applications that don't have any Application Associations can be deleted.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { AppIntegrationsClient, DeleteApplicationCommand } from "@aws-sdk/client-appintegrations"; // ES Modules import + * // const { AppIntegrationsClient, DeleteApplicationCommand } = require("@aws-sdk/client-appintegrations"); // CommonJS import + * const client = new AppIntegrationsClient(config); + * const input = { // DeleteApplicationRequest + * Arn: "STRING_VALUE", // required + * }; + * const command = new DeleteApplicationCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param DeleteApplicationCommandInput - {@link DeleteApplicationCommandInput} + * @returns {@link DeleteApplicationCommandOutput} + * @see {@link DeleteApplicationCommandInput} for command's `input` shape. + * @see {@link DeleteApplicationCommandOutput} for command's `response` shape. + * @see {@link AppIntegrationsClientResolvedConfig | config} for AppIntegrationsClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You do not have sufficient access to perform this action.

+ * + * @throws {@link InternalServiceError} (server fault) + *

Request processing failed due to an error or failure with the service.

+ * + * @throws {@link InvalidRequestException} (client fault) + *

The request is not valid.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The specified resource was not found.

+ * + * @throws {@link ThrottlingException} (client fault) + *

The throttling limit has been exceeded.

+ * + * @throws {@link AppIntegrationsServiceException} + *

Base exception class for all service exceptions from AppIntegrations service.

+ * + */ +export class DeleteApplicationCommand extends $Command< + DeleteApplicationCommandInput, + DeleteApplicationCommandOutput, + AppIntegrationsClientResolvedConfig +> { + 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: DeleteApplicationCommandInput) { + super(); + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: AppIntegrationsClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, DeleteApplicationCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "AppIntegrationsClient"; + const commandName = "DeleteApplicationCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_: any) => _, + outputFilterSensitiveLog: (_: any) => _, + [SMITHY_CONTEXT_KEY]: { + service: "AmazonAppIntegrationService", + operation: "DeleteApplication", + }, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + /** + * @internal + */ + private serialize(input: DeleteApplicationCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_DeleteApplicationCommand(input, context); + } + + /** + * @internal + */ + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return de_DeleteApplicationCommand(output, context); + } +} diff --git a/clients/client-appintegrations/src/commands/GetApplicationCommand.ts b/clients/client-appintegrations/src/commands/GetApplicationCommand.ts index 2f593c8ad312..c2a451e59166 100644 --- a/clients/client-appintegrations/src/commands/GetApplicationCommand.ts +++ b/clients/client-appintegrations/src/commands/GetApplicationCommand.ts @@ -82,6 +82,9 @@ export interface GetApplicationCommandOutput extends GetApplicationResponse, __M * // Tags: { // TagMap * // "": "STRING_VALUE", * // }, + * // Permissions: [ // PermissionList + * // "STRING_VALUE", + * // ], * // }; * * ``` diff --git a/clients/client-appintegrations/src/commands/ListApplicationAssociationsCommand.ts b/clients/client-appintegrations/src/commands/ListApplicationAssociationsCommand.ts new file mode 100644 index 000000000000..9ebd3a7ea379 --- /dev/null +++ b/clients/client-appintegrations/src/commands/ListApplicationAssociationsCommand.ts @@ -0,0 +1,171 @@ +// 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 { AppIntegrationsClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../AppIntegrationsClient"; +import { ListApplicationAssociationsRequest, ListApplicationAssociationsResponse } from "../models/models_0"; +import { + de_ListApplicationAssociationsCommand, + se_ListApplicationAssociationsCommand, +} from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link ListApplicationAssociationsCommand}. + */ +export interface ListApplicationAssociationsCommandInput extends ListApplicationAssociationsRequest {} +/** + * @public + * + * The output of {@link ListApplicationAssociationsCommand}. + */ +export interface ListApplicationAssociationsCommandOutput + extends ListApplicationAssociationsResponse, + __MetadataBearer {} + +/** + * @public + *

Returns a paginated list of application associations for an application.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { AppIntegrationsClient, ListApplicationAssociationsCommand } from "@aws-sdk/client-appintegrations"; // ES Modules import + * // const { AppIntegrationsClient, ListApplicationAssociationsCommand } = require("@aws-sdk/client-appintegrations"); // CommonJS import + * const client = new AppIntegrationsClient(config); + * const input = { // ListApplicationAssociationsRequest + * ApplicationId: "STRING_VALUE", // required + * NextToken: "STRING_VALUE", + * MaxResults: Number("int"), + * }; + * const command = new ListApplicationAssociationsCommand(input); + * const response = await client.send(command); + * // { // ListApplicationAssociationsResponse + * // ApplicationAssociations: [ // ApplicationAssociationsList + * // { // ApplicationAssociationSummary + * // ApplicationAssociationArn: "STRING_VALUE", + * // ApplicationArn: "STRING_VALUE", + * // ClientId: "STRING_VALUE", + * // }, + * // ], + * // NextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListApplicationAssociationsCommandInput - {@link ListApplicationAssociationsCommandInput} + * @returns {@link ListApplicationAssociationsCommandOutput} + * @see {@link ListApplicationAssociationsCommandInput} for command's `input` shape. + * @see {@link ListApplicationAssociationsCommandOutput} for command's `response` shape. + * @see {@link AppIntegrationsClientResolvedConfig | config} for AppIntegrationsClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You do not have sufficient access to perform this action.

+ * + * @throws {@link InternalServiceError} (server fault) + *

Request processing failed due to an error or failure with the service.

+ * + * @throws {@link InvalidRequestException} (client fault) + *

The request is not valid.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The specified resource was not found.

+ * + * @throws {@link ThrottlingException} (client fault) + *

The throttling limit has been exceeded.

+ * + * @throws {@link AppIntegrationsServiceException} + *

Base exception class for all service exceptions from AppIntegrations service.

+ * + */ +export class ListApplicationAssociationsCommand extends $Command< + ListApplicationAssociationsCommandInput, + ListApplicationAssociationsCommandOutput, + AppIntegrationsClientResolvedConfig +> { + 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: ListApplicationAssociationsCommandInput) { + super(); + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: AppIntegrationsClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, ListApplicationAssociationsCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "AppIntegrationsClient"; + const commandName = "ListApplicationAssociationsCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_: any) => _, + outputFilterSensitiveLog: (_: any) => _, + [SMITHY_CONTEXT_KEY]: { + service: "AmazonAppIntegrationService", + operation: "ListApplicationAssociations", + }, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + /** + * @internal + */ + private serialize(input: ListApplicationAssociationsCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_ListApplicationAssociationsCommand(input, context); + } + + /** + * @internal + */ + private deserialize( + output: __HttpResponse, + context: __SerdeContext + ): Promise { + return de_ListApplicationAssociationsCommand(output, context); + } +} diff --git a/clients/client-appintegrations/src/commands/UpdateApplicationCommand.ts b/clients/client-appintegrations/src/commands/UpdateApplicationCommand.ts index f312625ea6f4..48080557e460 100644 --- a/clients/client-appintegrations/src/commands/UpdateApplicationCommand.ts +++ b/clients/client-appintegrations/src/commands/UpdateApplicationCommand.ts @@ -70,6 +70,9 @@ export interface UpdateApplicationCommandOutput extends UpdateApplicationRespons * Description: "STRING_VALUE", * }, * ], + * Permissions: [ // PermissionList + * "STRING_VALUE", + * ], * }; * const command = new UpdateApplicationCommand(input); * const response = await client.send(command); @@ -98,6 +101,9 @@ export interface UpdateApplicationCommandOutput extends UpdateApplicationRespons * @throws {@link ThrottlingException} (client fault) *

The throttling limit has been exceeded.

* + * @throws {@link UnsupportedOperationException} (client fault) + *

The operation is not supported.

+ * * @throws {@link AppIntegrationsServiceException} *

Base exception class for all service exceptions from AppIntegrations service.

* diff --git a/clients/client-appintegrations/src/commands/index.ts b/clients/client-appintegrations/src/commands/index.ts index 8fb3b99df142..4a0c11c5b492 100644 --- a/clients/client-appintegrations/src/commands/index.ts +++ b/clients/client-appintegrations/src/commands/index.ts @@ -2,11 +2,13 @@ export * from "./CreateApplicationCommand"; export * from "./CreateDataIntegrationCommand"; export * from "./CreateEventIntegrationCommand"; +export * from "./DeleteApplicationCommand"; export * from "./DeleteDataIntegrationCommand"; export * from "./DeleteEventIntegrationCommand"; export * from "./GetApplicationCommand"; export * from "./GetDataIntegrationCommand"; export * from "./GetEventIntegrationCommand"; +export * from "./ListApplicationAssociationsCommand"; export * from "./ListApplicationsCommand"; export * from "./ListDataIntegrationAssociationsCommand"; export * from "./ListDataIntegrationsCommand"; diff --git a/clients/client-appintegrations/src/models/models_0.ts b/clients/client-appintegrations/src/models/models_0.ts index 6dc57ef50015..653293e00e75 100644 --- a/clients/client-appintegrations/src/models/models_0.ts +++ b/clients/client-appintegrations/src/models/models_0.ts @@ -127,12 +127,16 @@ export interface CreateApplicationRequest { /** * @public + * @deprecated + * *

The events that the application subscribes.

*/ Subscriptions?: Subscription[]; /** * @public + * @deprecated + * *

The events that the application publishes.

*/ Publications?: Publication[]; @@ -151,6 +155,12 @@ export interface CreateApplicationRequest { *

The tags used to organize, track, or control access for this resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}.

*/ Tags?: Record; + + /** + * @public + *

The configuration of events or requests that the application has access to.

+ */ + Permissions?: string[]; } /** @@ -280,6 +290,28 @@ export class ThrottlingException extends __BaseException { } } +/** + * @public + *

The operation is not supported.

+ */ +export class UnsupportedOperationException extends __BaseException { + readonly name: "UnsupportedOperationException" = "UnsupportedOperationException"; + readonly $fault: "client" = "client"; + Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedOperationException.prototype); + this.Message = opts.Message; + } +} + /** * @public *

The configuration for what files should be pulled from the source.

@@ -529,18 +561,18 @@ export interface CreateEventIntegrationResponse { /** * @public */ -export interface DeleteDataIntegrationRequest { +export interface DeleteApplicationRequest { /** * @public - *

A unique identifier for the DataIntegration.

+ *

The Amazon Resource Name (ARN) of the Application.

*/ - DataIntegrationIdentifier: string | undefined; + Arn: string | undefined; } /** * @public */ -export interface DeleteDataIntegrationResponse {} +export interface DeleteApplicationResponse {} /** * @public @@ -564,6 +596,22 @@ export class ResourceNotFoundException extends __BaseException { } } +/** + * @public + */ +export interface DeleteDataIntegrationRequest { + /** + * @public + *

A unique identifier for the DataIntegration.

+ */ + DataIntegrationIdentifier: string | undefined; +} + +/** + * @public + */ +export interface DeleteDataIntegrationResponse {} + /** * @public */ @@ -633,12 +681,16 @@ export interface GetApplicationResponse { /** * @public + * @deprecated + * *

The events that the application subscribes.

*/ Subscriptions?: Subscription[]; /** * @public + * @deprecated + * *

The events that the application publishes.

*/ Publications?: Publication[]; @@ -660,6 +712,12 @@ export interface GetApplicationResponse { *

The tags used to organize, track, or control access for this resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}.

*/ Tags?: Record; + + /** + * @public + *

The configuration of events or requests that the application has access to.

+ */ + Permissions?: string[]; } /** @@ -790,6 +848,71 @@ export interface GetEventIntegrationResponse { Tags?: Record; } +/** + * @public + */ +export interface ListApplicationAssociationsRequest { + /** + * @public + *

A unique identifier for the Application.

+ */ + ApplicationId: string | undefined; + + /** + * @public + *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

+ */ + NextToken?: string; + + /** + * @public + *

The maximum number of results to return per page.

+ */ + MaxResults?: number; +} + +/** + * @public + *

Summary information about the Application Association.

+ */ +export interface ApplicationAssociationSummary { + /** + * @public + *

The Amazon Resource Name (ARN) of the Application Association.

+ */ + ApplicationAssociationArn?: string; + + /** + * @public + *

The Amazon Resource Name (ARN) of the Application.

+ */ + ApplicationArn?: string; + + /** + * @public + *

The identifier for the client that is associated with the Application Association.

+ */ + ClientId?: string; +} + +/** + * @public + */ +export interface ListApplicationAssociationsResponse { + /** + * @public + *

List of Application Associations for the Application.

+ */ + ApplicationAssociations?: ApplicationAssociationSummary[]; + + /** + * @public + *

If there are additional results, this is the token for the next set of results.

+ */ + NextToken?: string; +} + /** * @public */ @@ -1248,15 +1371,25 @@ export interface UpdateApplicationRequest { /** * @public + * @deprecated + * *

The events that the application subscribes.

*/ Subscriptions?: Subscription[]; /** * @public + * @deprecated + * *

The events that the application publishes.

*/ Publications?: Publication[]; + + /** + * @public + *

The configuration of events or requests that the application has access to.

+ */ + Permissions?: string[]; } /** diff --git a/clients/client-appintegrations/src/pagination/ListApplicationAssociationsPaginator.ts b/clients/client-appintegrations/src/pagination/ListApplicationAssociationsPaginator.ts new file mode 100644 index 000000000000..930953752468 --- /dev/null +++ b/clients/client-appintegrations/src/pagination/ListApplicationAssociationsPaginator.ts @@ -0,0 +1,24 @@ +// smithy-typescript generated code +import { createPaginator } from "@smithy/core"; +import { Paginator } from "@smithy/types"; + +import { AppIntegrationsClient } from "../AppIntegrationsClient"; +import { + ListApplicationAssociationsCommand, + ListApplicationAssociationsCommandInput, + ListApplicationAssociationsCommandOutput, +} from "../commands/ListApplicationAssociationsCommand"; +import { AppIntegrationsPaginationConfiguration } from "./Interfaces"; + +/** + * @public + */ +export const paginateListApplicationAssociations: ( + config: AppIntegrationsPaginationConfiguration, + input: ListApplicationAssociationsCommandInput, + ...rest: any[] +) => Paginator = createPaginator< + AppIntegrationsPaginationConfiguration, + ListApplicationAssociationsCommandInput, + ListApplicationAssociationsCommandOutput +>(AppIntegrationsClient, ListApplicationAssociationsCommand, "NextToken", "NextToken", "MaxResults"); diff --git a/clients/client-appintegrations/src/pagination/index.ts b/clients/client-appintegrations/src/pagination/index.ts index 054abaca6be9..ab954b01a21c 100644 --- a/clients/client-appintegrations/src/pagination/index.ts +++ b/clients/client-appintegrations/src/pagination/index.ts @@ -1,5 +1,6 @@ // smithy-typescript generated code export * from "./Interfaces"; +export * from "./ListApplicationAssociationsPaginator"; export * from "./ListApplicationsPaginator"; export * from "./ListDataIntegrationAssociationsPaginator"; export * from "./ListDataIntegrationsPaginator"; diff --git a/clients/client-appintegrations/src/protocols/Aws_restJson1.ts b/clients/client-appintegrations/src/protocols/Aws_restJson1.ts index ff80edd79981..295623f47709 100644 --- a/clients/client-appintegrations/src/protocols/Aws_restJson1.ts +++ b/clients/client-appintegrations/src/protocols/Aws_restJson1.ts @@ -32,6 +32,7 @@ import { CreateEventIntegrationCommandInput, CreateEventIntegrationCommandOutput, } from "../commands/CreateEventIntegrationCommand"; +import { DeleteApplicationCommandInput, DeleteApplicationCommandOutput } from "../commands/DeleteApplicationCommand"; import { DeleteDataIntegrationCommandInput, DeleteDataIntegrationCommandOutput, @@ -46,6 +47,10 @@ import { GetEventIntegrationCommandInput, GetEventIntegrationCommandOutput, } from "../commands/GetEventIntegrationCommand"; +import { + ListApplicationAssociationsCommandInput, + ListApplicationAssociationsCommandOutput, +} from "../commands/ListApplicationAssociationsCommand"; import { ListApplicationsCommandInput, ListApplicationsCommandOutput } from "../commands/ListApplicationsCommand"; import { ListDataIntegrationAssociationsCommandInput, @@ -95,6 +100,7 @@ import { ScheduleConfiguration, Subscription, ThrottlingException, + UnsupportedOperationException, } from "../models/models_0"; /** @@ -117,6 +123,7 @@ export const se_CreateApplicationCommand = async ( Description: [], Name: [], Namespace: [], + Permissions: (_) => _json(_), Publications: (_) => _json(_), Subscriptions: (_) => _json(_), Tags: (_) => _json(_), @@ -183,6 +190,22 @@ export const se_CreateEventIntegrationCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1DeleteApplicationCommand + */ +export const se_DeleteApplicationCommand = async ( + input: DeleteApplicationCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/applications/{Arn}"); + b.p("Arn", () => input.Arn!, "{Arn}", false); + let body: any; + b.m("DELETE").h(headers).b(body); + return b.build(); +}; + /** * serializeAws_restJson1DeleteDataIntegrationCommand */ @@ -263,6 +286,26 @@ export const se_GetEventIntegrationCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1ListApplicationAssociationsCommand + */ +export const se_ListApplicationAssociationsCommand = async ( + input: ListApplicationAssociationsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/applications/{ApplicationId}/associations"); + b.p("ApplicationId", () => input.ApplicationId!, "{ApplicationId}", false); + const query: any = map({ + [_nT]: [, input[_NT]!], + [_mR]: [() => input.MaxResults !== void 0, () => input[_MR]!.toString()], + }); + let body: any; + b.m("GET").h(headers).q(query).b(body); + return b.build(); +}; + /** * serializeAws_restJson1ListApplicationsCommand */ @@ -440,6 +483,7 @@ export const se_UpdateApplicationCommand = async ( ApplicationSourceConfig: (_) => _json(_), Description: [], Name: [], + Permissions: (_) => _json(_), Publications: (_) => _json(_), Subscriptions: (_) => _json(_), }) @@ -548,6 +592,9 @@ const de_CreateApplicationCommandError = async ( case "ThrottlingException": case "com.amazonaws.appintegrations#ThrottlingException": throw await de_ThrottlingExceptionRes(parsedOutput, context); + case "UnsupportedOperationException": + case "com.amazonaws.appintegrations#UnsupportedOperationException": + throw await de_UnsupportedOperationExceptionRes(parsedOutput, context); default: const parsedBody = parsedOutput.body; return throwDefaultError({ @@ -692,6 +739,61 @@ const de_CreateEventIntegrationCommandError = async ( } }; +/** + * deserializeAws_restJson1DeleteApplicationCommand + */ +export const de_DeleteApplicationCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_DeleteApplicationCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + await collectBody(output.body, context); + return contents; +}; + +/** + * deserializeAws_restJson1DeleteApplicationCommandError + */ +const de_DeleteApplicationCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "AccessDeniedException": + case "com.amazonaws.appintegrations#AccessDeniedException": + throw await de_AccessDeniedExceptionRes(parsedOutput, context); + case "InternalServiceError": + case "com.amazonaws.appintegrations#InternalServiceError": + throw await de_InternalServiceErrorRes(parsedOutput, context); + case "InvalidRequestException": + case "com.amazonaws.appintegrations#InvalidRequestException": + throw await de_InvalidRequestExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.appintegrations#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.appintegrations#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + /** * deserializeAws_restJson1DeleteDataIntegrationCommand */ @@ -825,6 +927,7 @@ export const de_GetApplicationCommand = async ( LastModifiedTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), Name: __expectString, Namespace: __expectString, + Permissions: _json, Publications: _json, Subscriptions: _json, Tags: _json, @@ -1003,6 +1106,66 @@ const de_GetEventIntegrationCommandError = async ( } }; +/** + * deserializeAws_restJson1ListApplicationAssociationsCommand + */ +export const de_ListApplicationAssociationsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_ListApplicationAssociationsCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + ApplicationAssociations: _json, + NextToken: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListApplicationAssociationsCommandError + */ +const de_ListApplicationAssociationsCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "AccessDeniedException": + case "com.amazonaws.appintegrations#AccessDeniedException": + throw await de_AccessDeniedExceptionRes(parsedOutput, context); + case "InternalServiceError": + case "com.amazonaws.appintegrations#InternalServiceError": + throw await de_InternalServiceErrorRes(parsedOutput, context); + case "InvalidRequestException": + case "com.amazonaws.appintegrations#InvalidRequestException": + throw await de_InvalidRequestExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.appintegrations#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.appintegrations#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + /** * deserializeAws_restJson1ListApplicationsCommand */ @@ -1499,6 +1662,9 @@ const de_UpdateApplicationCommandError = async ( case "ThrottlingException": case "com.amazonaws.appintegrations#ThrottlingException": throw await de_ThrottlingExceptionRes(parsedOutput, context); + case "UnsupportedOperationException": + case "com.amazonaws.appintegrations#UnsupportedOperationException": + throw await de_UnsupportedOperationExceptionRes(parsedOutput, context); default: const parsedBody = parsedOutput.body; return throwDefaultError({ @@ -1757,6 +1923,26 @@ const de_ThrottlingExceptionRes = async (parsedOutput: any, context: __SerdeCont return __decorateServiceException(exception, parsedOutput.body); }; +/** + * deserializeAws_restJson1UnsupportedOperationExceptionRes + */ +const de_UnsupportedOperationExceptionRes = async ( + parsedOutput: any, + context: __SerdeContext +): Promise => { + const contents: any = map({}); + const data: any = parsedOutput.body; + const doc = take(data, { + Message: __expectString, + }); + Object.assign(contents, doc); + const exception = new UnsupportedOperationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); +}; + // se_ApplicationApprovedOrigins omitted. // se_ApplicationSourceConfig omitted. @@ -1775,6 +1961,8 @@ const de_ThrottlingExceptionRes = async (parsedOutput: any, context: __SerdeCont // se_ObjectConfiguration omitted. +// se_PermissionList omitted. + // se_Publication omitted. // se_PublicationList omitted. @@ -1789,6 +1977,10 @@ const de_ThrottlingExceptionRes = async (parsedOutput: any, context: __SerdeCont // de_ApplicationApprovedOrigins omitted. +// de_ApplicationAssociationsList omitted. + +// de_ApplicationAssociationSummary omitted. + /** * deserializeAws_restJson1ApplicationsList */ @@ -1849,6 +2041,8 @@ const de_ApplicationSummary = (output: any, context: __SerdeContext): Applicatio // de_ObjectConfiguration omitted. +// de_PermissionList omitted. + // de_Publication omitted. // de_PublicationList omitted. diff --git a/codegen/sdk-codegen/aws-models/appintegrations.json b/codegen/sdk-codegen/aws-models/appintegrations.json index e2c1e2bec19e..48c422904fe7 100644 --- a/codegen/sdk-codegen/aws-models/appintegrations.json +++ b/codegen/sdk-codegen/aws-models/appintegrations.json @@ -55,6 +55,9 @@ { "target": "com.amazonaws.appintegrations#CreateEventIntegration" }, + { + "target": "com.amazonaws.appintegrations#DeleteApplication" + }, { "target": "com.amazonaws.appintegrations#DeleteDataIntegration" }, @@ -70,6 +73,9 @@ { "target": "com.amazonaws.appintegrations#GetEventIntegration" }, + { + "target": "com.amazonaws.appintegrations#ListApplicationAssociations" + }, { "target": "com.amazonaws.appintegrations#ListApplications" }, @@ -877,6 +883,44 @@ } } }, + "com.amazonaws.appintegrations#ApplicationAssociationSummary": { + "type": "structure", + "members": { + "ApplicationAssociationArn": { + "target": "com.amazonaws.appintegrations#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Application Association.

" + } + }, + "ApplicationArn": { + "target": "com.amazonaws.appintegrations#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Application.

" + } + }, + "ClientId": { + "target": "com.amazonaws.appintegrations#ClientId", + "traits": { + "smithy.api#documentation": "

The identifier for the client that is associated with the Application Association.

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

Summary information about the Application Association.

" + } + }, + "com.amazonaws.appintegrations#ApplicationAssociationsList": { + "type": "list", + "member": { + "target": "com.amazonaws.appintegrations#ApplicationAssociationSummary" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 50 + } + } + }, "com.amazonaws.appintegrations#ApplicationName": { "type": "string", "traits": { @@ -1042,6 +1086,9 @@ }, { "target": "com.amazonaws.appintegrations#ThrottlingException" + }, + { + "target": "com.amazonaws.appintegrations#UnsupportedOperationException" } ], "traits": { @@ -1106,12 +1153,18 @@ "Subscriptions": { "target": "com.amazonaws.appintegrations#SubscriptionList", "traits": { + "smithy.api#deprecated": { + "message": "Subscriptions has been replaced with Permissions" + }, "smithy.api#documentation": "

The events that the application subscribes.

" } }, "Publications": { "target": "com.amazonaws.appintegrations#PublicationList", "traits": { + "smithy.api#deprecated": { + "message": "Publications has been replaced with Permissions" + }, "smithy.api#documentation": "

The events that the application publishes.

" } }, @@ -1127,6 +1180,12 @@ "traits": { "smithy.api#documentation": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

" } + }, + "Permissions": { + "target": "com.amazonaws.appintegrations#PermissionList", + "traits": { + "smithy.api#documentation": "

The configuration of events or requests that the application has access to.

" + } } }, "traits": { @@ -1505,6 +1564,73 @@ } } }, + "com.amazonaws.appintegrations#DeleteApplication": { + "type": "operation", + "input": { + "target": "com.amazonaws.appintegrations#DeleteApplicationRequest" + }, + "output": { + "target": "com.amazonaws.appintegrations#DeleteApplicationResponse" + }, + "errors": [ + { + "target": "com.amazonaws.appintegrations#AccessDeniedException" + }, + { + "target": "com.amazonaws.appintegrations#InternalServiceError" + }, + { + "target": "com.amazonaws.appintegrations#InvalidRequestException" + }, + { + "target": "com.amazonaws.appintegrations#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.appintegrations#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes the Application. Only Applications that don't have any Application Associations can be deleted.

", + "smithy.api#examples": [ + { + "title": "To delete an application", + "documentation": "The following deletes an application.", + "input": { + "Arn": "arn:aws:app-integrations:us-west-2:0123456789012:application/98542c53-e8ac-4570-9c85-c6552c8d9c5e" + }, + "output": {} + } + ], + "smithy.api#http": { + "method": "DELETE", + "uri": "/applications/{Arn}", + "code": 200 + } + } + }, + "com.amazonaws.appintegrations#DeleteApplicationRequest": { + "type": "structure", + "members": { + "Arn": { + "target": "com.amazonaws.appintegrations#ArnOrUUID", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Application.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.appintegrations#DeleteApplicationResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.appintegrations#DeleteDataIntegration": { "type": "operation", "input": { @@ -1623,7 +1749,7 @@ "type": "string", "traits": { "smithy.api#length": { - "min": 1, + "min": 0, "max": 1000 }, "smithy.api#pattern": ".*" @@ -2005,12 +2131,18 @@ "Subscriptions": { "target": "com.amazonaws.appintegrations#SubscriptionList", "traits": { + "smithy.api#deprecated": { + "message": "Subscriptions has been replaced with Permissions" + }, "smithy.api#documentation": "

The events that the application subscribes.

" } }, "Publications": { "target": "com.amazonaws.appintegrations#PublicationList", "traits": { + "smithy.api#deprecated": { + "message": "Publications has been replaced with Permissions" + }, "smithy.api#documentation": "

The events that the application publishes.

" } }, @@ -2031,6 +2163,12 @@ "traits": { "smithy.api#documentation": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

" } + }, + "Permissions": { + "target": "com.amazonaws.appintegrations#PermissionList", + "traits": { + "smithy.api#documentation": "

The configuration of events or requests that the application has access to.

" + } } }, "traits": { @@ -2295,6 +2433,115 @@ "smithy.api#httpError": 400 } }, + "com.amazonaws.appintegrations#ListApplicationAssociations": { + "type": "operation", + "input": { + "target": "com.amazonaws.appintegrations#ListApplicationAssociationsRequest" + }, + "output": { + "target": "com.amazonaws.appintegrations#ListApplicationAssociationsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.appintegrations#AccessDeniedException" + }, + { + "target": "com.amazonaws.appintegrations#InternalServiceError" + }, + { + "target": "com.amazonaws.appintegrations#InvalidRequestException" + }, + { + "target": "com.amazonaws.appintegrations#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.appintegrations#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns a paginated list of application associations for an application.

", + "smithy.api#examples": [ + { + "title": "To list application associations of an application", + "documentation": "The following retrives application associations of an application", + "input": { + "ApplicationId": "98542c53-e8ac-4570-9c85-c6552c8d9c5e" + }, + "output": { + "ApplicationAssociations": [ + { + "ApplicationArn": "arn:aws:app-integrations:us-west-2:0123456789012:application/98542c53-e8ac-4570-9c85-c6552c8d9c5e", + "ApplicationAssociationArn": "arn:aws:app-integrations:us-west-2:0123456789012:application-association/98542c53-e8ac-4570-9c85-c6552c8d9c5e/461dfb57-320a-454d-9bba-bb560845ff38", + "ClientId": "connect.amazonaws.com" + } + ], + "NextToken": "abc" + } + } + ], + "smithy.api#http": { + "method": "GET", + "uri": "/applications/{ApplicationId}/associations", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "ApplicationAssociations", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.appintegrations#ListApplicationAssociationsRequest": { + "type": "structure", + "members": { + "ApplicationId": { + "target": "com.amazonaws.appintegrations#ArnOrUUID", + "traits": { + "smithy.api#documentation": "

A unique identifier for the Application.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "com.amazonaws.appintegrations#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next set of results. Use the value returned in the previous \nresponse in the next request to retrieve the next set of results.

", + "smithy.api#httpQuery": "nextToken" + } + }, + "MaxResults": { + "target": "com.amazonaws.appintegrations#MaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return per page.

", + "smithy.api#httpQuery": "maxResults" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.appintegrations#ListApplicationAssociationsResponse": { + "type": "structure", + "members": { + "ApplicationAssociations": { + "target": "com.amazonaws.appintegrations#ApplicationAssociationsList", + "traits": { + "smithy.api#documentation": "

List of Application Associations for the Application.

" + } + }, + "NextToken": { + "target": "com.amazonaws.appintegrations#NextToken", + "traits": { + "smithy.api#documentation": "

If there are additional results, this is the token for the next set of results.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.appintegrations#ListApplications": { "type": "operation", "input": { @@ -2867,6 +3114,29 @@ "smithy.api#documentation": "

The configuration for what data should be pulled from the source.

" } }, + "com.amazonaws.appintegrations#Permission": { + "type": "string", + "traits": { + "smithy.api#documentation": "

The permission of an event or request that the application has access to.

", + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#pattern": "^[a-zA-Z0-9\\/\\._\\-\\*]+$" + } + }, + "com.amazonaws.appintegrations#PermissionList": { + "type": "list", + "member": { + "target": "com.amazonaws.appintegrations#Permission" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 150 + } + } + }, "com.amazonaws.appintegrations#Publication": { "type": "structure", "members": { @@ -3152,6 +3422,19 @@ "smithy.api#pattern": "^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$" } }, + "com.amazonaws.appintegrations#UnsupportedOperationException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.appintegrations#Message" + } + }, + "traits": { + "smithy.api#documentation": "

The operation is not supported.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, "com.amazonaws.appintegrations#UntagResource": { "type": "operation", "input": { @@ -3237,6 +3520,9 @@ }, { "target": "com.amazonaws.appintegrations#ThrottlingException" + }, + { + "target": "com.amazonaws.appintegrations#UnsupportedOperationException" } ], "traits": { @@ -3291,14 +3577,26 @@ "Subscriptions": { "target": "com.amazonaws.appintegrations#SubscriptionList", "traits": { + "smithy.api#deprecated": { + "message": "Subscriptions has been replaced with Permissions" + }, "smithy.api#documentation": "

The events that the application subscribes.

" } }, "Publications": { "target": "com.amazonaws.appintegrations#PublicationList", "traits": { + "smithy.api#deprecated": { + "message": "Publications has been replaced with Permissions" + }, "smithy.api#documentation": "

The events that the application publishes.

" } + }, + "Permissions": { + "target": "com.amazonaws.appintegrations#PermissionList", + "traits": { + "smithy.api#documentation": "

The configuration of events or requests that the application has access to.

" + } } }, "traits": {