From d0594b9dafa5e5efdd06ea5ec14165c3e99d8acc Mon Sep 17 00:00:00 2001 From: awstools Date: Tue, 20 Jun 2023 19:48:24 +0000 Subject: [PATCH] feat(client-appflow): This release adds new API to reset connector metadata cache --- clients/client-appflow/README.md | 8 + clients/client-appflow/src/Appflow.ts | 23 +++ clients/client-appflow/src/AppflowClient.ts | 6 + .../ResetConnectorMetadataCacheCommand.ts | 173 ++++++++++++++++++ clients/client-appflow/src/commands/index.ts | 1 + clients/client-appflow/src/models/models_0.ts | 69 ++++++- .../src/protocols/Aws_restJson1.ts | 90 +++++++++ codegen/sdk-codegen/aws-models/appflow.json | 81 +++++++- 8 files changed, 447 insertions(+), 4 deletions(-) create mode 100644 clients/client-appflow/src/commands/ResetConnectorMetadataCacheCommand.ts diff --git a/clients/client-appflow/README.md b/clients/client-appflow/README.md index 140323801d86..66f29839dbf2 100644 --- a/clients/client-appflow/README.md +++ b/clients/client-appflow/README.md @@ -364,6 +364,14 @@ RegisterConnector [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-appflow/classes/registerconnectorcommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-appflow/interfaces/registerconnectorcommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-appflow/interfaces/registerconnectorcommandoutput.html) + +
+ +ResetConnectorMetadataCache + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-appflow/classes/resetconnectormetadatacachecommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-appflow/interfaces/resetconnectormetadatacachecommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-appflow/interfaces/resetconnectormetadatacachecommandoutput.html) +
diff --git a/clients/client-appflow/src/Appflow.ts b/clients/client-appflow/src/Appflow.ts index 36b7d0e45587..c6b1b067bab4 100644 --- a/clients/client-appflow/src/Appflow.ts +++ b/clients/client-appflow/src/Appflow.ts @@ -71,6 +71,11 @@ import { RegisterConnectorCommandInput, RegisterConnectorCommandOutput, } from "./commands/RegisterConnectorCommand"; +import { + ResetConnectorMetadataCacheCommand, + ResetConnectorMetadataCacheCommandInput, + ResetConnectorMetadataCacheCommandOutput, +} from "./commands/ResetConnectorMetadataCacheCommand"; import { StartFlowCommand, StartFlowCommandInput, StartFlowCommandOutput } from "./commands/StartFlowCommand"; import { StopFlowCommand, StopFlowCommandInput, StopFlowCommandOutput } from "./commands/StopFlowCommand"; import { TagResourceCommand, TagResourceCommandInput, TagResourceCommandOutput } from "./commands/TagResourceCommand"; @@ -113,6 +118,7 @@ const commands = { ListFlowsCommand, ListTagsForResourceCommand, RegisterConnectorCommand, + ResetConnectorMetadataCacheCommand, StartFlowCommand, StopFlowCommand, TagResourceCommand, @@ -369,6 +375,23 @@ export interface Appflow { cb: (err: any, data?: RegisterConnectorCommandOutput) => void ): void; + /** + * @see {@link ResetConnectorMetadataCacheCommand} + */ + resetConnectorMetadataCache( + args: ResetConnectorMetadataCacheCommandInput, + options?: __HttpHandlerOptions + ): Promise; + resetConnectorMetadataCache( + args: ResetConnectorMetadataCacheCommandInput, + cb: (err: any, data?: ResetConnectorMetadataCacheCommandOutput) => void + ): void; + resetConnectorMetadataCache( + args: ResetConnectorMetadataCacheCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ResetConnectorMetadataCacheCommandOutput) => void + ): void; + /** * @see {@link StartFlowCommand} */ diff --git a/clients/client-appflow/src/AppflowClient.ts b/clients/client-appflow/src/AppflowClient.ts index 63386b10298c..99ff0886617e 100644 --- a/clients/client-appflow/src/AppflowClient.ts +++ b/clients/client-appflow/src/AppflowClient.ts @@ -91,6 +91,10 @@ import { ListTagsForResourceCommandOutput, } from "./commands/ListTagsForResourceCommand"; import { RegisterConnectorCommandInput, RegisterConnectorCommandOutput } from "./commands/RegisterConnectorCommand"; +import { + ResetConnectorMetadataCacheCommandInput, + ResetConnectorMetadataCacheCommandOutput, +} from "./commands/ResetConnectorMetadataCacheCommand"; import { StartFlowCommandInput, StartFlowCommandOutput } from "./commands/StartFlowCommand"; import { StopFlowCommandInput, StopFlowCommandOutput } from "./commands/StopFlowCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "./commands/TagResourceCommand"; @@ -138,6 +142,7 @@ export type ServiceInputTypes = | ListFlowsCommandInput | ListTagsForResourceCommandInput | RegisterConnectorCommandInput + | ResetConnectorMetadataCacheCommandInput | StartFlowCommandInput | StopFlowCommandInput | TagResourceCommandInput @@ -167,6 +172,7 @@ export type ServiceOutputTypes = | ListFlowsCommandOutput | ListTagsForResourceCommandOutput | RegisterConnectorCommandOutput + | ResetConnectorMetadataCacheCommandOutput | StartFlowCommandOutput | StopFlowCommandOutput | TagResourceCommandOutput diff --git a/clients/client-appflow/src/commands/ResetConnectorMetadataCacheCommand.ts b/clients/client-appflow/src/commands/ResetConnectorMetadataCacheCommand.ts new file mode 100644 index 000000000000..fb36a0346a59 --- /dev/null +++ b/clients/client-appflow/src/commands/ResetConnectorMetadataCacheCommand.ts @@ -0,0 +1,173 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, +} from "@aws-sdk/types"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { SerdeContext as __SerdeContext } from "@smithy/types"; + +import { AppflowClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../AppflowClient"; +import { ResetConnectorMetadataCacheRequest, ResetConnectorMetadataCacheResponse } from "../models/models_0"; +import { + de_ResetConnectorMetadataCacheCommand, + se_ResetConnectorMetadataCacheCommand, +} from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link ResetConnectorMetadataCacheCommand}. + */ +export interface ResetConnectorMetadataCacheCommandInput extends ResetConnectorMetadataCacheRequest {} +/** + * @public + * + * The output of {@link ResetConnectorMetadataCacheCommand}. + */ +export interface ResetConnectorMetadataCacheCommandOutput + extends ResetConnectorMetadataCacheResponse, + __MetadataBearer {} + +/** + * @public + *

Resets metadata about your connector entities that Amazon AppFlow stored in its + * cache. Use this action when you want Amazon AppFlow to return the latest information + * about the data that you have in a source application.

+ *

Amazon AppFlow returns metadata about your entities when you use the + * ListConnectorEntities or DescribeConnectorEntities actions. Following these actions, Amazon AppFlow caches the metadata to reduce the number of API requests that it must send to + * the source application. Amazon AppFlow automatically resets the cache once every hour, + * but you can use this action when you want to get the latest metadata right away.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { AppflowClient, ResetConnectorMetadataCacheCommand } from "@aws-sdk/client-appflow"; // ES Modules import + * // const { AppflowClient, ResetConnectorMetadataCacheCommand } = require("@aws-sdk/client-appflow"); // CommonJS import + * const client = new AppflowClient(config); + * const input = { // ResetConnectorMetadataCacheRequest + * connectorProfileName: "STRING_VALUE", + * connectorType: "Salesforce" || "Singular" || "Slack" || "Redshift" || "S3" || "Marketo" || "Googleanalytics" || "Zendesk" || "Servicenow" || "Datadog" || "Trendmicro" || "Snowflake" || "Dynatrace" || "Infornexus" || "Amplitude" || "Veeva" || "EventBridge" || "LookoutMetrics" || "Upsolver" || "Honeycode" || "CustomerProfiles" || "SAPOData" || "CustomConnector" || "Pardot", + * connectorEntityName: "STRING_VALUE", + * entitiesPath: "STRING_VALUE", + * apiVersion: "STRING_VALUE", + * }; + * const command = new ResetConnectorMetadataCacheCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param ResetConnectorMetadataCacheCommandInput - {@link ResetConnectorMetadataCacheCommandInput} + * @returns {@link ResetConnectorMetadataCacheCommandOutput} + * @see {@link ResetConnectorMetadataCacheCommandInput} for command's `input` shape. + * @see {@link ResetConnectorMetadataCacheCommandOutput} for command's `response` shape. + * @see {@link AppflowClientResolvedConfig | config} for AppflowClient's `config` shape. + * + * @throws {@link ConflictException} (client fault) + *

There was a conflict when processing the request (for example, a flow with the given name + * already exists within the account. Check for conflicting resource names and try again.

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

An internal service error occurred during the processing of your request. Try again + * later.

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

The resource specified in the request (such as the source or destination connector + * profile) is not found.

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

The request has invalid or missing parameters.

+ * + * @throws {@link AppflowServiceException} + *

Base exception class for all service exceptions from Appflow service.

+ * + */ +export class ResetConnectorMetadataCacheCommand extends $Command< + ResetConnectorMetadataCacheCommandInput, + ResetConnectorMetadataCacheCommandOutput, + AppflowClientResolvedConfig +> { + // 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: ResetConnectorMetadataCacheCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: AppflowClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, ResetConnectorMetadataCacheCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "AppflowClient"; + const commandName = "ResetConnectorMetadataCacheCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_: any) => _, + outputFilterSensitiveLog: (_: any) => _, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + /** + * @internal + */ + private serialize(input: ResetConnectorMetadataCacheCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_ResetConnectorMetadataCacheCommand(input, context); + } + + /** + * @internal + */ + private deserialize( + output: __HttpResponse, + context: __SerdeContext + ): Promise { + return de_ResetConnectorMetadataCacheCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-appflow/src/commands/index.ts b/clients/client-appflow/src/commands/index.ts index 7c4075f3900e..65cf5313fbf0 100644 --- a/clients/client-appflow/src/commands/index.ts +++ b/clients/client-appflow/src/commands/index.ts @@ -15,6 +15,7 @@ export * from "./ListConnectorsCommand"; export * from "./ListFlowsCommand"; export * from "./ListTagsForResourceCommand"; export * from "./RegisterConnectorCommand"; +export * from "./ResetConnectorMetadataCacheCommand"; export * from "./StartFlowCommand"; export * from "./StopFlowCommand"; export * from "./TagResourceCommand"; diff --git a/clients/client-appflow/src/models/models_0.ts b/clients/client-appflow/src/models/models_0.ts index cce52e1ae8f4..9e97f78f57d9 100644 --- a/clients/client-appflow/src/models/models_0.ts +++ b/clients/client-appflow/src/models/models_0.ts @@ -1001,12 +1001,13 @@ export interface DataTransferApi { *
AUTOMATIC
*
*

The default. Optimizes a flow for datasets that fluctuate in size from small to - * large. For each flow run, Amazon AppFlow chooses to use the SYNC or ASYNC API type based on - * the amount of data that the run transfers.

+ * large. For each flow run, Amazon AppFlow chooses to use the SYNC or ASYNC API type + * based on the amount of data that the run transfers.

*
*
SYNC
*
- *

A synchronous API. This type of API optimizes a flow for small to medium-sized datasets.

+ *

A synchronous API. This type of API optimizes a flow for small to medium-sized + * datasets.

*
*
ASYNC
*
@@ -5839,6 +5840,68 @@ export interface RegisterConnectorResponse { connectorArn?: string; } +/** + * @public + */ +export interface ResetConnectorMetadataCacheRequest { + /** + *

The name of the connector profile that you want to reset cached metadata for.

+ *

You can omit this parameter if you're resetting the cache for any of the following + * connectors: Amazon Connect, Amazon EventBridge, Amazon Lookout for Metrics, Amazon S3, or Upsolver. If you're resetting the cache for any other connector, you must include this + * parameter in your request.

+ */ + connectorProfileName?: string; + + /** + *

The type of connector to reset cached metadata for.

+ *

You must include this parameter in your request if you're resetting the cache for any of + * the following connectors: Amazon Connect, Amazon EventBridge, Amazon Lookout for Metrics, + * Amazon S3, or Upsolver. If you're resetting the cache for any other connector, you + * can omit this parameter from your request.

+ */ + connectorType?: ConnectorType | string; + + /** + *

Use this parameter if you want to reset cached metadata about the details for an + * individual entity.

+ *

If you don't include this parameter in your request, Amazon AppFlow only resets + * cached metadata about entity names, not entity details.

+ */ + connectorEntityName?: string; + + /** + *

Use this parameter only if you’re resetting the cached metadata about a nested entity. + * Only some connectors support nested entities. A nested entity is one that has another entity + * as a parent. To use this parameter, specify the name of the parent entity.

+ *

To look up the parent-child relationship of entities, you can send a ListConnectorEntities + * request that omits the entitiesPath parameter. Amazon AppFlow will return a list of + * top-level entities. For each one, it indicates whether the entity has nested entities. Then, + * in a subsequent ListConnectorEntities request, you can specify a parent entity name for the + * entitiesPath parameter. Amazon AppFlow will return a list of the child entities for that + * parent.

+ */ + entitiesPath?: string; + + /** + *

The API version that you specified in the connector profile that you’re resetting cached + * metadata for. You must use this parameter only if the connector supports multiple API versions + * or if the connector type is CustomConnector.

+ *

To look up how many versions a connector supports, use the DescribeConnectors action. In + * the response, find the value that Amazon AppFlow returns for the connectorVersion + * parameter.

+ *

To look up the connector type, use the DescribeConnectorProfiles action. In the response, + * find the value that Amazon AppFlow returns for the connectorType parameter.

+ *

To look up the API version that you specified in a connector profile, use the + * DescribeConnectorProfiles action.

+ */ + apiVersion?: string; +} + +/** + * @public + */ +export interface ResetConnectorMetadataCacheResponse {} + /** * @public */ diff --git a/clients/client-appflow/src/protocols/Aws_restJson1.ts b/clients/client-appflow/src/protocols/Aws_restJson1.ts index 17dc67a91147..500038d40b24 100644 --- a/clients/client-appflow/src/protocols/Aws_restJson1.ts +++ b/clients/client-appflow/src/protocols/Aws_restJson1.ts @@ -62,6 +62,10 @@ import { ListTagsForResourceCommandOutput, } from "../commands/ListTagsForResourceCommand"; import { RegisterConnectorCommandInput, RegisterConnectorCommandOutput } from "../commands/RegisterConnectorCommand"; +import { + ResetConnectorMetadataCacheCommandInput, + ResetConnectorMetadataCacheCommandOutput, +} from "../commands/ResetConnectorMetadataCacheCommand"; import { StartFlowCommandInput, StartFlowCommandOutput } from "../commands/StartFlowCommand"; import { StopFlowCommandInput, StopFlowCommandOutput } from "../commands/StopFlowCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; @@ -712,6 +716,40 @@ export const se_RegisterConnectorCommand = async ( }); }; +/** + * serializeAws_restJson1ResetConnectorMetadataCacheCommand + */ +export const se_ResetConnectorMetadataCacheCommand = async ( + input: ResetConnectorMetadataCacheCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = { + "content-type": "application/json", + }; + const resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/reset-connector-metadata-cache"; + let body: any; + body = JSON.stringify( + take(input, { + apiVersion: [], + connectorEntityName: [], + connectorProfileName: [], + connectorType: [], + entitiesPath: [], + }) + ); + return new __HttpRequest({ + protocol, + hostname, + port, + method: "POST", + headers, + path: resolvedPath, + body, + }); +}; + /** * serializeAws_restJson1StartFlowCommand */ @@ -1868,6 +1906,58 @@ const de_RegisterConnectorCommandError = async ( } }; +/** + * deserializeAws_restJson1ResetConnectorMetadataCacheCommand + */ +export const de_ResetConnectorMetadataCacheCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_ResetConnectorMetadataCacheCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + await collectBody(output.body, context); + return contents; +}; + +/** + * deserializeAws_restJson1ResetConnectorMetadataCacheCommandError + */ +const de_ResetConnectorMetadataCacheCommandError = 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 "ConflictException": + case "com.amazonaws.appflow#ConflictException": + throw await de_ConflictExceptionRes(parsedOutput, context); + case "InternalServerException": + case "com.amazonaws.appflow#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.appflow#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.appflow#ValidationException": + throw await de_ValidationExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + /** * deserializeAws_restJson1StartFlowCommand */ diff --git a/codegen/sdk-codegen/aws-models/appflow.json b/codegen/sdk-codegen/aws-models/appflow.json index 09991f7e0271..5d28a138b15f 100644 --- a/codegen/sdk-codegen/aws-models/appflow.json +++ b/codegen/sdk-codegen/aws-models/appflow.json @@ -2646,7 +2646,7 @@ "Type": { "target": "com.amazonaws.appflow#DataTransferApiType", "traits": { - "smithy.api#documentation": "

You can specify one of the following types:

\n
\n
AUTOMATIC
\n
\n

The default. Optimizes a flow for datasets that fluctuate in size from small to\n large. For each flow run, Amazon AppFlow chooses to use the SYNC or ASYNC API type based on\n the amount of data that the run transfers.

\n
\n
SYNC
\n
\n

A synchronous API. This type of API optimizes a flow for small to medium-sized datasets.

\n
\n
ASYNC
\n
\n

An asynchronous API. This type of API optimizes a flow for large datasets.

\n
\n
" + "smithy.api#documentation": "

You can specify one of the following types:

\n
\n
AUTOMATIC
\n
\n

The default. Optimizes a flow for datasets that fluctuate in size from small to\n large. For each flow run, Amazon AppFlow chooses to use the SYNC or ASYNC API type\n based on the amount of data that the run transfers.

\n
\n
SYNC
\n
\n

A synchronous API. This type of API optimizes a flow for small to medium-sized\n datasets.

\n
\n
ASYNC
\n
\n

An asynchronous API. This type of API optimizes a flow for large datasets.

\n
\n
" } } }, @@ -7050,6 +7050,82 @@ "smithy.api#documentation": "

Describes the status of an attempt from Amazon AppFlow to register a resource.

\n

When you run a flow that you've configured to use a metadata catalog, Amazon AppFlow\n registers a metadata table and data partitions with that catalog. This operation provides the\n status of that registration attempt. The operation also indicates how many related resources\n Amazon AppFlow created or updated.

" } }, + "com.amazonaws.appflow#ResetConnectorMetadataCache": { + "type": "operation", + "input": { + "target": "com.amazonaws.appflow#ResetConnectorMetadataCacheRequest" + }, + "output": { + "target": "com.amazonaws.appflow#ResetConnectorMetadataCacheResponse" + }, + "errors": [ + { + "target": "com.amazonaws.appflow#ConflictException" + }, + { + "target": "com.amazonaws.appflow#InternalServerException" + }, + { + "target": "com.amazonaws.appflow#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.appflow#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Resets metadata about your connector entities that Amazon AppFlow stored in its\n cache. Use this action when you want Amazon AppFlow to return the latest information\n about the data that you have in a source application.

\n

Amazon AppFlow returns metadata about your entities when you use the\n ListConnectorEntities or DescribeConnectorEntities actions. Following these actions, Amazon AppFlow caches the metadata to reduce the number of API requests that it must send to\n the source application. Amazon AppFlow automatically resets the cache once every hour,\n but you can use this action when you want to get the latest metadata right away.

", + "smithy.api#http": { + "method": "POST", + "uri": "/reset-connector-metadata-cache", + "code": 200 + } + } + }, + "com.amazonaws.appflow#ResetConnectorMetadataCacheRequest": { + "type": "structure", + "members": { + "connectorProfileName": { + "target": "com.amazonaws.appflow#ConnectorProfileName", + "traits": { + "smithy.api#documentation": "

The name of the connector profile that you want to reset cached metadata for.

\n

You can omit this parameter if you're resetting the cache for any of the following\n connectors: Amazon Connect, Amazon EventBridge, Amazon Lookout for Metrics, Amazon S3, or Upsolver. If you're resetting the cache for any other connector, you must include this\n parameter in your request.

" + } + }, + "connectorType": { + "target": "com.amazonaws.appflow#ConnectorType", + "traits": { + "smithy.api#documentation": "

The type of connector to reset cached metadata for.

\n

You must include this parameter in your request if you're resetting the cache for any of\n the following connectors: Amazon Connect, Amazon EventBridge, Amazon Lookout for Metrics,\n Amazon S3, or Upsolver. If you're resetting the cache for any other connector, you\n can omit this parameter from your request.

" + } + }, + "connectorEntityName": { + "target": "com.amazonaws.appflow#EntityName", + "traits": { + "smithy.api#documentation": "

Use this parameter if you want to reset cached metadata about the details for an\n individual entity.

\n

If you don't include this parameter in your request, Amazon AppFlow only resets\n cached metadata about entity names, not entity details.

" + } + }, + "entitiesPath": { + "target": "com.amazonaws.appflow#EntitiesPath", + "traits": { + "smithy.api#documentation": "

Use this parameter only if you’re resetting the cached metadata about a nested entity.\n Only some connectors support nested entities. A nested entity is one that has another entity\n as a parent. To use this parameter, specify the name of the parent entity.

\n

To look up the parent-child relationship of entities, you can send a ListConnectorEntities\n request that omits the entitiesPath parameter. Amazon AppFlow will return a list of\n top-level entities. For each one, it indicates whether the entity has nested entities. Then,\n in a subsequent ListConnectorEntities request, you can specify a parent entity name for the\n entitiesPath parameter. Amazon AppFlow will return a list of the child entities for that\n parent.

" + } + }, + "apiVersion": { + "target": "com.amazonaws.appflow#ApiVersion", + "traits": { + "smithy.api#documentation": "

The API version that you specified in the connector profile that you’re resetting cached\n metadata for. You must use this parameter only if the connector supports multiple API versions\n or if the connector type is CustomConnector.

\n

To look up how many versions a connector supports, use the DescribeConnectors action. In\n the response, find the value that Amazon AppFlow returns for the connectorVersion\n parameter.

\n

To look up the connector type, use the DescribeConnectorProfiles action. In the response,\n find the value that Amazon AppFlow returns for the connectorType parameter.

\n

To look up the API version that you specified in a connector profile, use the\n DescribeConnectorProfiles action.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.appflow#ResetConnectorMetadataCacheResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.appflow#ResourceNotFoundException": { "type": "structure", "members": { @@ -7954,6 +8030,9 @@ { "target": "com.amazonaws.appflow#RegisterConnector" }, + { + "target": "com.amazonaws.appflow#ResetConnectorMetadataCache" + }, { "target": "com.amazonaws.appflow#StartFlow" },