diff --git a/clients/client-resource-explorer-2/README.md b/clients/client-resource-explorer-2/README.md index a73ba7b84d0f9..309f66b6842a8 100644 --- a/clients/client-resource-explorer-2/README.md +++ b/clients/client-resource-explorer-2/README.md @@ -278,6 +278,14 @@ DisassociateDefaultView [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resource-explorer-2/classes/disassociatedefaultviewcommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resource-explorer-2/interfaces/disassociatedefaultviewcommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resource-explorer-2/interfaces/disassociatedefaultviewcommandoutput.html) + +
+ +GetAccountLevelServiceConfiguration + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resource-explorer-2/classes/getaccountlevelserviceconfigurationcommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resource-explorer-2/interfaces/getaccountlevelserviceconfigurationcommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resource-explorer-2/interfaces/getaccountlevelserviceconfigurationcommandoutput.html) +
@@ -310,6 +318,14 @@ ListIndexes [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resource-explorer-2/classes/listindexescommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resource-explorer-2/interfaces/listindexescommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resource-explorer-2/interfaces/listindexescommandoutput.html) +
+
+ +ListIndexesForMembers + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resource-explorer-2/classes/listindexesformemberscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resource-explorer-2/interfaces/listindexesformemberscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resource-explorer-2/interfaces/listindexesformemberscommandoutput.html) +
diff --git a/clients/client-resource-explorer-2/src/ResourceExplorer2.ts b/clients/client-resource-explorer-2/src/ResourceExplorer2.ts index c943edde85c9b..8f5e8e777f46e 100644 --- a/clients/client-resource-explorer-2/src/ResourceExplorer2.ts +++ b/clients/client-resource-explorer-2/src/ResourceExplorer2.ts @@ -21,6 +21,11 @@ import { DisassociateDefaultViewCommandInput, DisassociateDefaultViewCommandOutput, } from "./commands/DisassociateDefaultViewCommand"; +import { + GetAccountLevelServiceConfigurationCommand, + GetAccountLevelServiceConfigurationCommandInput, + GetAccountLevelServiceConfigurationCommandOutput, +} from "./commands/GetAccountLevelServiceConfigurationCommand"; import { GetDefaultViewCommand, GetDefaultViewCommandInput, @@ -29,6 +34,11 @@ import { import { GetIndexCommand, GetIndexCommandInput, GetIndexCommandOutput } from "./commands/GetIndexCommand"; import { GetViewCommand, GetViewCommandInput, GetViewCommandOutput } from "./commands/GetViewCommand"; import { ListIndexesCommand, ListIndexesCommandInput, ListIndexesCommandOutput } from "./commands/ListIndexesCommand"; +import { + ListIndexesForMembersCommand, + ListIndexesForMembersCommandInput, + ListIndexesForMembersCommandOutput, +} from "./commands/ListIndexesForMembersCommand"; import { ListSupportedResourceTypesCommand, ListSupportedResourceTypesCommandInput, @@ -63,10 +73,12 @@ const commands = { DeleteIndexCommand, DeleteViewCommand, DisassociateDefaultViewCommand, + GetAccountLevelServiceConfigurationCommand, GetDefaultViewCommand, GetIndexCommand, GetViewCommand, ListIndexesCommand, + ListIndexesForMembersCommand, ListSupportedResourceTypesCommand, ListTagsForResourceCommand, ListViewsCommand, @@ -167,6 +179,23 @@ export interface ResourceExplorer2 { cb: (err: any, data?: DisassociateDefaultViewCommandOutput) => void ): void; + /** + * @see {@link GetAccountLevelServiceConfigurationCommand} + */ + getAccountLevelServiceConfiguration( + args: GetAccountLevelServiceConfigurationCommandInput, + options?: __HttpHandlerOptions + ): Promise; + getAccountLevelServiceConfiguration( + args: GetAccountLevelServiceConfigurationCommandInput, + cb: (err: any, data?: GetAccountLevelServiceConfigurationCommandOutput) => void + ): void; + getAccountLevelServiceConfiguration( + args: GetAccountLevelServiceConfigurationCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: GetAccountLevelServiceConfigurationCommandOutput) => void + ): void; + /** * @see {@link GetDefaultViewCommand} */ @@ -214,6 +243,23 @@ export interface ResourceExplorer2 { cb: (err: any, data?: ListIndexesCommandOutput) => void ): void; + /** + * @see {@link ListIndexesForMembersCommand} + */ + listIndexesForMembers( + args: ListIndexesForMembersCommandInput, + options?: __HttpHandlerOptions + ): Promise; + listIndexesForMembers( + args: ListIndexesForMembersCommandInput, + cb: (err: any, data?: ListIndexesForMembersCommandOutput) => void + ): void; + listIndexesForMembers( + args: ListIndexesForMembersCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListIndexesForMembersCommandOutput) => void + ): void; + /** * @see {@link ListSupportedResourceTypesCommand} */ diff --git a/clients/client-resource-explorer-2/src/ResourceExplorer2Client.ts b/clients/client-resource-explorer-2/src/ResourceExplorer2Client.ts index ad37f4f94e628..2d0d7f236ea91 100644 --- a/clients/client-resource-explorer-2/src/ResourceExplorer2Client.ts +++ b/clients/client-resource-explorer-2/src/ResourceExplorer2Client.ts @@ -63,10 +63,18 @@ import { DisassociateDefaultViewCommandInput, DisassociateDefaultViewCommandOutput, } from "./commands/DisassociateDefaultViewCommand"; +import { + GetAccountLevelServiceConfigurationCommandInput, + GetAccountLevelServiceConfigurationCommandOutput, +} from "./commands/GetAccountLevelServiceConfigurationCommand"; import { GetDefaultViewCommandInput, GetDefaultViewCommandOutput } from "./commands/GetDefaultViewCommand"; import { GetIndexCommandInput, GetIndexCommandOutput } from "./commands/GetIndexCommand"; import { GetViewCommandInput, GetViewCommandOutput } from "./commands/GetViewCommand"; import { ListIndexesCommandInput, ListIndexesCommandOutput } from "./commands/ListIndexesCommand"; +import { + ListIndexesForMembersCommandInput, + ListIndexesForMembersCommandOutput, +} from "./commands/ListIndexesForMembersCommand"; import { ListSupportedResourceTypesCommandInput, ListSupportedResourceTypesCommandOutput, @@ -103,10 +111,12 @@ export type ServiceInputTypes = | DeleteIndexCommandInput | DeleteViewCommandInput | DisassociateDefaultViewCommandInput + | GetAccountLevelServiceConfigurationCommandInput | GetDefaultViewCommandInput | GetIndexCommandInput | GetViewCommandInput | ListIndexesCommandInput + | ListIndexesForMembersCommandInput | ListSupportedResourceTypesCommandInput | ListTagsForResourceCommandInput | ListViewsCommandInput @@ -127,10 +137,12 @@ export type ServiceOutputTypes = | DeleteIndexCommandOutput | DeleteViewCommandOutput | DisassociateDefaultViewCommandOutput + | GetAccountLevelServiceConfigurationCommandOutput | GetDefaultViewCommandOutput | GetIndexCommandOutput | GetViewCommandOutput | ListIndexesCommandOutput + | ListIndexesForMembersCommandOutput | ListSupportedResourceTypesCommandOutput | ListTagsForResourceCommandOutput | ListViewsCommandOutput diff --git a/clients/client-resource-explorer-2/src/commands/AssociateDefaultViewCommand.ts b/clients/client-resource-explorer-2/src/commands/AssociateDefaultViewCommand.ts index 55f6d7ad2a5cb..573858f18019d 100644 --- a/clients/client-resource-explorer-2/src/commands/AssociateDefaultViewCommand.ts +++ b/clients/client-resource-explorer-2/src/commands/AssociateDefaultViewCommand.ts @@ -85,8 +85,8 @@ export interface AssociateDefaultViewCommandOutput extends AssociateDefaultViewO * * @throws {@link ThrottlingException} (client fault) *

The request failed because you exceeded a rate limit for this operation. For more - * information, see Quotas - * for Resource Explorer.

+ * information, see Quotas for + * Resource Explorer.

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

You provided an invalid value for one of the operation's parameters. Check the syntax diff --git a/clients/client-resource-explorer-2/src/commands/BatchGetViewCommand.ts b/clients/client-resource-explorer-2/src/commands/BatchGetViewCommand.ts index 47f7e0f9b247a..4c21f132f0e05 100644 --- a/clients/client-resource-explorer-2/src/commands/BatchGetViewCommand.ts +++ b/clients/client-resource-explorer-2/src/commands/BatchGetViewCommand.ts @@ -98,8 +98,8 @@ export interface BatchGetViewCommandOutput extends BatchGetViewOutput, __Metadat * * @throws {@link ThrottlingException} (client fault) *

The request failed because you exceeded a rate limit for this operation. For more - * information, see Quotas - * for Resource Explorer.

+ * information, see Quotas for + * Resource Explorer.

* * @throws {@link UnauthorizedException} (client fault) *

The principal making the request isn't permitted to perform the operation.

diff --git a/clients/client-resource-explorer-2/src/commands/CreateIndexCommand.ts b/clients/client-resource-explorer-2/src/commands/CreateIndexCommand.ts index 3af79fd3f5c41..ac90671de4f64 100644 --- a/clients/client-resource-explorer-2/src/commands/CreateIndexCommand.ts +++ b/clients/client-resource-explorer-2/src/commands/CreateIndexCommand.ts @@ -14,7 +14,7 @@ import { SMITHY_CONTEXT_KEY, } from "@smithy/types"; -import { CreateIndexInput, CreateIndexOutput } from "../models/models_0"; +import { CreateIndexInput, CreateIndexInputFilterSensitiveLog, CreateIndexOutput } from "../models/models_0"; import { de_CreateIndexCommand, se_CreateIndexCommand } from "../protocols/Aws_restJson1"; import { ResourceExplorer2ClientResolvedConfig, @@ -125,9 +125,13 @@ export interface CreateIndexCommandOutput extends CreateIndexOutput, __MetadataB * permissions.

* * @throws {@link ConflictException} (client fault) - *

The request failed because either you specified parameters that didn’t match the + *

If you attempted to create a view, then the request failed because either you specified parameters that didn’t match the * original request, or you attempted to create a view with a name that already exists in * this Amazon Web Services Region.

+ *

If you attempted to create an index, then the request failed because either you specified parameters that didn't match + * the original request, or an index already exists in the current Amazon Web Services Region.

+ *

If you attempted to update an index type to AGGREGATOR, then the request failed because you already + * have an AGGREGATOR index in a different Amazon Web Services Region.

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

The request failed because of internal service error. Try your request again @@ -135,8 +139,8 @@ export interface CreateIndexCommandOutput extends CreateIndexOutput, __MetadataB * * @throws {@link ThrottlingException} (client fault) *

The request failed because you exceeded a rate limit for this operation. For more - * information, see Quotas - * for Resource Explorer.

+ * information, see Quotas for + * Resource Explorer.

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

You provided an invalid value for one of the operation's parameters. Check the syntax @@ -186,7 +190,7 @@ export class CreateIndexCommand extends $Command< logger, clientName, commandName, - inputFilterSensitiveLog: (_: any) => _, + inputFilterSensitiveLog: CreateIndexInputFilterSensitiveLog, outputFilterSensitiveLog: (_: any) => _, [SMITHY_CONTEXT_KEY]: { service: "ResourceExplorer", diff --git a/clients/client-resource-explorer-2/src/commands/CreateViewCommand.ts b/clients/client-resource-explorer-2/src/commands/CreateViewCommand.ts index c5001a08e9ea3..69d564289fcf2 100644 --- a/clients/client-resource-explorer-2/src/commands/CreateViewCommand.ts +++ b/clients/client-resource-explorer-2/src/commands/CreateViewCommand.ts @@ -68,6 +68,7 @@ export interface CreateViewCommandOutput extends CreateViewOutput, __MetadataBea * Name: "STRING_VALUE", // required * }, * ], + * Scope: "STRING_VALUE", * Filters: { // SearchFilter * FilterString: "STRING_VALUE", // required * }, @@ -107,9 +108,13 @@ export interface CreateViewCommandOutput extends CreateViewOutput, __MetadataBea * permissions.

* * @throws {@link ConflictException} (client fault) - *

The request failed because either you specified parameters that didn’t match the + *

If you attempted to create a view, then the request failed because either you specified parameters that didn’t match the * original request, or you attempted to create a view with a name that already exists in * this Amazon Web Services Region.

+ *

If you attempted to create an index, then the request failed because either you specified parameters that didn't match + * the original request, or an index already exists in the current Amazon Web Services Region.

+ *

If you attempted to update an index type to AGGREGATOR, then the request failed because you already + * have an AGGREGATOR index in a different Amazon Web Services Region.

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

The request failed because of internal service error. Try your request again @@ -120,8 +125,8 @@ export interface CreateViewCommandOutput extends CreateViewOutput, __MetadataBea * * @throws {@link ThrottlingException} (client fault) *

The request failed because you exceeded a rate limit for this operation. For more - * information, see Quotas - * for Resource Explorer.

+ * information, see Quotas for + * Resource Explorer.

* * @throws {@link UnauthorizedException} (client fault) *

The principal making the request isn't permitted to perform the operation.

diff --git a/clients/client-resource-explorer-2/src/commands/DeleteIndexCommand.ts b/clients/client-resource-explorer-2/src/commands/DeleteIndexCommand.ts index e12a28c97ecf4..d8c7479950006 100644 --- a/clients/client-resource-explorer-2/src/commands/DeleteIndexCommand.ts +++ b/clients/client-resource-explorer-2/src/commands/DeleteIndexCommand.ts @@ -92,8 +92,8 @@ export interface DeleteIndexCommandOutput extends DeleteIndexOutput, __MetadataB * * @throws {@link ThrottlingException} (client fault) *

The request failed because you exceeded a rate limit for this operation. For more - * information, see Quotas - * for Resource Explorer.

+ * information, see Quotas for + * Resource Explorer.

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

You provided an invalid value for one of the operation's parameters. Check the syntax diff --git a/clients/client-resource-explorer-2/src/commands/DeleteViewCommand.ts b/clients/client-resource-explorer-2/src/commands/DeleteViewCommand.ts index 38c47a4901e57..8f0429f9298fb 100644 --- a/clients/client-resource-explorer-2/src/commands/DeleteViewCommand.ts +++ b/clients/client-resource-explorer-2/src/commands/DeleteViewCommand.ts @@ -82,8 +82,8 @@ export interface DeleteViewCommandOutput extends DeleteViewOutput, __MetadataBea * * @throws {@link ThrottlingException} (client fault) *

The request failed because you exceeded a rate limit for this operation. For more - * information, see Quotas - * for Resource Explorer.

+ * information, see Quotas for + * Resource Explorer.

* * @throws {@link UnauthorizedException} (client fault) *

The principal making the request isn't permitted to perform the operation.

diff --git a/clients/client-resource-explorer-2/src/commands/DisassociateDefaultViewCommand.ts b/clients/client-resource-explorer-2/src/commands/DisassociateDefaultViewCommand.ts index 1deb796bfbf01..c0402a03ccd78 100644 --- a/clients/client-resource-explorer-2/src/commands/DisassociateDefaultViewCommand.ts +++ b/clients/client-resource-explorer-2/src/commands/DisassociateDefaultViewCommand.ts @@ -73,10 +73,14 @@ export interface DisassociateDefaultViewCommandOutput extends __MetadataBearer { *

The request failed because of internal service error. Try your request again * later.

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

You specified a resource that doesn't exist. Check the ID or ARN that you used to + * identity the resource, and try again.

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

The request failed because you exceeded a rate limit for this operation. For more - * information, see Quotas - * for Resource Explorer.

+ * information, see Quotas for + * Resource Explorer.

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

You provided an invalid value for one of the operation's parameters. Check the syntax diff --git a/clients/client-resource-explorer-2/src/commands/GetAccountLevelServiceConfigurationCommand.ts b/clients/client-resource-explorer-2/src/commands/GetAccountLevelServiceConfigurationCommand.ts new file mode 100644 index 0000000000000..38f2743c3a26b --- /dev/null +++ b/clients/client-resource-explorer-2/src/commands/GetAccountLevelServiceConfigurationCommand.ts @@ -0,0 +1,174 @@ +// 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 { GetAccountLevelServiceConfigurationOutput } from "../models/models_0"; +import { + de_GetAccountLevelServiceConfigurationCommand, + se_GetAccountLevelServiceConfigurationCommand, +} from "../protocols/Aws_restJson1"; +import { + ResourceExplorer2ClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes, +} from "../ResourceExplorer2Client"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link GetAccountLevelServiceConfigurationCommand}. + */ +export interface GetAccountLevelServiceConfigurationCommandInput {} +/** + * @public + * + * The output of {@link GetAccountLevelServiceConfigurationCommand}. + */ +export interface GetAccountLevelServiceConfigurationCommandOutput + extends GetAccountLevelServiceConfigurationOutput, + __MetadataBearer {} + +/** + * @public + *

Retrieves the status of your account's Amazon Web Services service access, and validates the service + * linked role required to access the multi-account search feature. Only the management + * account or a delegated administrator with service access enabled can invoke this API + * call.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ResourceExplorer2Client, GetAccountLevelServiceConfigurationCommand } from "@aws-sdk/client-resource-explorer-2"; // ES Modules import + * // const { ResourceExplorer2Client, GetAccountLevelServiceConfigurationCommand } = require("@aws-sdk/client-resource-explorer-2"); // CommonJS import + * const client = new ResourceExplorer2Client(config); + * const input = {}; + * const command = new GetAccountLevelServiceConfigurationCommand(input); + * const response = await client.send(command); + * // { // GetAccountLevelServiceConfigurationOutput + * // OrgConfiguration: { // OrgConfiguration + * // AWSServiceAccessStatus: "STRING_VALUE", // required + * // ServiceLinkedRole: "STRING_VALUE", + * // }, + * // }; + * + * ``` + * + * @param GetAccountLevelServiceConfigurationCommandInput - {@link GetAccountLevelServiceConfigurationCommandInput} + * @returns {@link GetAccountLevelServiceConfigurationCommandOutput} + * @see {@link GetAccountLevelServiceConfigurationCommandInput} for command's `input` shape. + * @see {@link GetAccountLevelServiceConfigurationCommandOutput} for command's `response` shape. + * @see {@link ResourceExplorer2ClientResolvedConfig | config} for ResourceExplorer2Client's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

The credentials that you used to call this operation don't have the minimum required + * permissions.

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

The request failed because of internal service error. Try your request again + * later.

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

You specified a resource that doesn't exist. Check the ID or ARN that you used to + * identity the resource, and try again.

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

The request failed because you exceeded a rate limit for this operation. For more + * information, see Quotas for + * Resource Explorer.

+ * + * @throws {@link ResourceExplorer2ServiceException} + *

Base exception class for all service exceptions from ResourceExplorer2 service.

+ * + */ +export class GetAccountLevelServiceConfigurationCommand extends $Command< + GetAccountLevelServiceConfigurationCommandInput, + GetAccountLevelServiceConfigurationCommandOutput, + ResourceExplorer2ClientResolvedConfig +> { + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + }; + } + + /** + * @public + */ + constructor(readonly input: GetAccountLevelServiceConfigurationCommandInput) { + super(); + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ResourceExplorer2ClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, GetAccountLevelServiceConfigurationCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ResourceExplorer2Client"; + const commandName = "GetAccountLevelServiceConfigurationCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_: any) => _, + outputFilterSensitiveLog: (_: any) => _, + [SMITHY_CONTEXT_KEY]: { + service: "ResourceExplorer", + operation: "GetAccountLevelServiceConfiguration", + }, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + /** + * @internal + */ + private serialize( + input: GetAccountLevelServiceConfigurationCommandInput, + context: __SerdeContext + ): Promise<__HttpRequest> { + return se_GetAccountLevelServiceConfigurationCommand(input, context); + } + + /** + * @internal + */ + private deserialize( + output: __HttpResponse, + context: __SerdeContext + ): Promise { + return de_GetAccountLevelServiceConfigurationCommand(output, context); + } +} diff --git a/clients/client-resource-explorer-2/src/commands/GetDefaultViewCommand.ts b/clients/client-resource-explorer-2/src/commands/GetDefaultViewCommand.ts index 0663ddeb84564..75697e7fc9ebe 100644 --- a/clients/client-resource-explorer-2/src/commands/GetDefaultViewCommand.ts +++ b/clients/client-resource-explorer-2/src/commands/GetDefaultViewCommand.ts @@ -78,8 +78,8 @@ export interface GetDefaultViewCommandOutput extends GetDefaultViewOutput, __Met * * @throws {@link ThrottlingException} (client fault) *

The request failed because you exceeded a rate limit for this operation. For more - * information, see Quotas - * for Resource Explorer.

+ * information, see Quotas for + * Resource Explorer.

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

You provided an invalid value for one of the operation's parameters. Check the syntax diff --git a/clients/client-resource-explorer-2/src/commands/GetIndexCommand.ts b/clients/client-resource-explorer-2/src/commands/GetIndexCommand.ts index eb75310fecff0..09beaae60e3b1 100644 --- a/clients/client-resource-explorer-2/src/commands/GetIndexCommand.ts +++ b/clients/client-resource-explorer-2/src/commands/GetIndexCommand.ts @@ -14,7 +14,7 @@ import { SMITHY_CONTEXT_KEY, } from "@smithy/types"; -import { GetIndexOutput } from "../models/models_0"; +import { GetIndexOutput, GetIndexOutputFilterSensitiveLog } from "../models/models_0"; import { de_GetIndexCommand, se_GetIndexCommand } from "../protocols/Aws_restJson1"; import { ResourceExplorer2ClientResolvedConfig, @@ -91,8 +91,8 @@ export interface GetIndexCommandOutput extends GetIndexOutput, __MetadataBearer * * @throws {@link ThrottlingException} (client fault) *

The request failed because you exceeded a rate limit for this operation. For more - * information, see Quotas - * for Resource Explorer.

+ * information, see Quotas for + * Resource Explorer.

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

You provided an invalid value for one of the operation's parameters. Check the syntax @@ -143,7 +143,7 @@ export class GetIndexCommand extends $Command< clientName, commandName, inputFilterSensitiveLog: (_: any) => _, - outputFilterSensitiveLog: (_: any) => _, + outputFilterSensitiveLog: GetIndexOutputFilterSensitiveLog, [SMITHY_CONTEXT_KEY]: { service: "ResourceExplorer", operation: "GetIndex", diff --git a/clients/client-resource-explorer-2/src/commands/GetViewCommand.ts b/clients/client-resource-explorer-2/src/commands/GetViewCommand.ts index 503f948049542..c3e2a048fe2bc 100644 --- a/clients/client-resource-explorer-2/src/commands/GetViewCommand.ts +++ b/clients/client-resource-explorer-2/src/commands/GetViewCommand.ts @@ -95,8 +95,8 @@ export interface GetViewCommandOutput extends GetViewOutput, __MetadataBearer {} * * @throws {@link ThrottlingException} (client fault) *

The request failed because you exceeded a rate limit for this operation. For more - * information, see Quotas - * for Resource Explorer.

+ * information, see Quotas for + * Resource Explorer.

* * @throws {@link UnauthorizedException} (client fault) *

The principal making the request isn't permitted to perform the operation.

diff --git a/clients/client-resource-explorer-2/src/commands/ListIndexesCommand.ts b/clients/client-resource-explorer-2/src/commands/ListIndexesCommand.ts index 98566daaf7448..1aebe3de818eb 100644 --- a/clients/client-resource-explorer-2/src/commands/ListIndexesCommand.ts +++ b/clients/client-resource-explorer-2/src/commands/ListIndexesCommand.ts @@ -88,8 +88,8 @@ export interface ListIndexesCommandOutput extends ListIndexesOutput, __MetadataB * * @throws {@link ThrottlingException} (client fault) *

The request failed because you exceeded a rate limit for this operation. For more - * information, see Quotas - * for Resource Explorer.

+ * information, see Quotas for + * Resource Explorer.

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

You provided an invalid value for one of the operation's parameters. Check the syntax diff --git a/clients/client-resource-explorer-2/src/commands/ListIndexesForMembersCommand.ts b/clients/client-resource-explorer-2/src/commands/ListIndexesForMembersCommand.ts new file mode 100644 index 0000000000000..eba31717d86df --- /dev/null +++ b/clients/client-resource-explorer-2/src/commands/ListIndexesForMembersCommand.ts @@ -0,0 +1,174 @@ +// 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 { ListIndexesForMembersInput, ListIndexesForMembersOutput } from "../models/models_0"; +import { de_ListIndexesForMembersCommand, se_ListIndexesForMembersCommand } from "../protocols/Aws_restJson1"; +import { + ResourceExplorer2ClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes, +} from "../ResourceExplorer2Client"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link ListIndexesForMembersCommand}. + */ +export interface ListIndexesForMembersCommandInput extends ListIndexesForMembersInput {} +/** + * @public + * + * The output of {@link ListIndexesForMembersCommand}. + */ +export interface ListIndexesForMembersCommandOutput extends ListIndexesForMembersOutput, __MetadataBearer {} + +/** + * @public + *

Retrieves a list of a member's indexes in all Amazon Web Services Regions that are currently + * collecting resource information for Amazon Web Services Resource Explorer. Only the management account or a + * delegated administrator with service access enabled can invoke this API call. + *

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ResourceExplorer2Client, ListIndexesForMembersCommand } from "@aws-sdk/client-resource-explorer-2"; // ES Modules import + * // const { ResourceExplorer2Client, ListIndexesForMembersCommand } = require("@aws-sdk/client-resource-explorer-2"); // CommonJS import + * const client = new ResourceExplorer2Client(config); + * const input = { // ListIndexesForMembersInput + * AccountIdList: [ // AccountIdList // required + * "STRING_VALUE", + * ], + * MaxResults: Number("int"), + * NextToken: "STRING_VALUE", + * }; + * const command = new ListIndexesForMembersCommand(input); + * const response = await client.send(command); + * // { // ListIndexesForMembersOutput + * // Indexes: [ // MemberIndexList + * // { // MemberIndex + * // AccountId: "STRING_VALUE", + * // Region: "STRING_VALUE", + * // Arn: "STRING_VALUE", + * // Type: "STRING_VALUE", + * // }, + * // ], + * // NextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListIndexesForMembersCommandInput - {@link ListIndexesForMembersCommandInput} + * @returns {@link ListIndexesForMembersCommandOutput} + * @see {@link ListIndexesForMembersCommandInput} for command's `input` shape. + * @see {@link ListIndexesForMembersCommandOutput} for command's `response` shape. + * @see {@link ResourceExplorer2ClientResolvedConfig | config} for ResourceExplorer2Client's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

The credentials that you used to call this operation don't have the minimum required + * permissions.

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

The request failed because of internal service error. Try your request again + * later.

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

The request failed because you exceeded a rate limit for this operation. For more + * information, see Quotas for + * Resource Explorer.

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

You provided an invalid value for one of the operation's parameters. Check the syntax + * for the operation, and try again.

+ * + * @throws {@link ResourceExplorer2ServiceException} + *

Base exception class for all service exceptions from ResourceExplorer2 service.

+ * + */ +export class ListIndexesForMembersCommand extends $Command< + ListIndexesForMembersCommandInput, + ListIndexesForMembersCommandOutput, + ResourceExplorer2ClientResolvedConfig +> { + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + }; + } + + /** + * @public + */ + constructor(readonly input: ListIndexesForMembersCommandInput) { + super(); + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ResourceExplorer2ClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, ListIndexesForMembersCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ResourceExplorer2Client"; + const commandName = "ListIndexesForMembersCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_: any) => _, + outputFilterSensitiveLog: (_: any) => _, + [SMITHY_CONTEXT_KEY]: { + service: "ResourceExplorer", + operation: "ListIndexesForMembers", + }, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + /** + * @internal + */ + private serialize(input: ListIndexesForMembersCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_ListIndexesForMembersCommand(input, context); + } + + /** + * @internal + */ + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return de_ListIndexesForMembersCommand(output, context); + } +} diff --git a/clients/client-resource-explorer-2/src/commands/ListSupportedResourceTypesCommand.ts b/clients/client-resource-explorer-2/src/commands/ListSupportedResourceTypesCommand.ts index 317c1d0655d90..4b1998880c33b 100644 --- a/clients/client-resource-explorer-2/src/commands/ListSupportedResourceTypesCommand.ts +++ b/clients/client-resource-explorer-2/src/commands/ListSupportedResourceTypesCommand.ts @@ -82,8 +82,8 @@ export interface ListSupportedResourceTypesCommandOutput extends ListSupportedRe * * @throws {@link ThrottlingException} (client fault) *

The request failed because you exceeded a rate limit for this operation. For more - * information, see Quotas - * for Resource Explorer.

+ * information, see Quotas for + * Resource Explorer.

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

You provided an invalid value for one of the operation's parameters. Check the syntax diff --git a/clients/client-resource-explorer-2/src/commands/ListTagsForResourceCommand.ts b/clients/client-resource-explorer-2/src/commands/ListTagsForResourceCommand.ts index faf04ca6e7f74..df207b75b7eab 100644 --- a/clients/client-resource-explorer-2/src/commands/ListTagsForResourceCommand.ts +++ b/clients/client-resource-explorer-2/src/commands/ListTagsForResourceCommand.ts @@ -14,7 +14,11 @@ import { SMITHY_CONTEXT_KEY, } from "@smithy/types"; -import { ListTagsForResourceInput, ListTagsForResourceOutput } from "../models/models_0"; +import { + ListTagsForResourceInput, + ListTagsForResourceOutput, + ListTagsForResourceOutputFilterSensitiveLog, +} from "../models/models_0"; import { de_ListTagsForResourceCommand, se_ListTagsForResourceCommand } from "../protocols/Aws_restJson1"; import { ResourceExplorer2ClientResolvedConfig, @@ -81,8 +85,8 @@ export interface ListTagsForResourceCommandOutput extends ListTagsForResourceOut * * @throws {@link ThrottlingException} (client fault) *

The request failed because you exceeded a rate limit for this operation. For more - * information, see Quotas - * for Resource Explorer.

+ * information, see Quotas for + * Resource Explorer.

* * @throws {@link UnauthorizedException} (client fault) *

The principal making the request isn't permitted to perform the operation.

@@ -138,7 +142,7 @@ export class ListTagsForResourceCommand extends $Command< clientName, commandName, inputFilterSensitiveLog: (_: any) => _, - outputFilterSensitiveLog: (_: any) => _, + outputFilterSensitiveLog: ListTagsForResourceOutputFilterSensitiveLog, [SMITHY_CONTEXT_KEY]: { service: "ResourceExplorer", operation: "ListTagsForResource", diff --git a/clients/client-resource-explorer-2/src/commands/ListViewsCommand.ts b/clients/client-resource-explorer-2/src/commands/ListViewsCommand.ts index 82e7534b33645..676adf3c4c093 100644 --- a/clients/client-resource-explorer-2/src/commands/ListViewsCommand.ts +++ b/clients/client-resource-explorer-2/src/commands/ListViewsCommand.ts @@ -88,8 +88,8 @@ export interface ListViewsCommandOutput extends ListViewsOutput, __MetadataBeare * * @throws {@link ThrottlingException} (client fault) *

The request failed because you exceeded a rate limit for this operation. For more - * information, see Quotas - * for Resource Explorer.

+ * information, see Quotas for + * Resource Explorer.

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

You provided an invalid value for one of the operation's parameters. Check the syntax diff --git a/clients/client-resource-explorer-2/src/commands/SearchCommand.ts b/clients/client-resource-explorer-2/src/commands/SearchCommand.ts index c87b431a32099..4a63f82a16997 100644 --- a/clients/client-resource-explorer-2/src/commands/SearchCommand.ts +++ b/clients/client-resource-explorer-2/src/commands/SearchCommand.ts @@ -116,8 +116,8 @@ export interface SearchCommandOutput extends SearchOutput, __MetadataBearer {} * * @throws {@link ThrottlingException} (client fault) *

The request failed because you exceeded a rate limit for this operation. For more - * information, see Quotas - * for Resource Explorer.

+ * information, see Quotas for + * Resource Explorer.

* * @throws {@link UnauthorizedException} (client fault) *

The principal making the request isn't permitted to perform the operation.

diff --git a/clients/client-resource-explorer-2/src/commands/TagResourceCommand.ts b/clients/client-resource-explorer-2/src/commands/TagResourceCommand.ts index 8b701d802e229..2a959689921b1 100644 --- a/clients/client-resource-explorer-2/src/commands/TagResourceCommand.ts +++ b/clients/client-resource-explorer-2/src/commands/TagResourceCommand.ts @@ -14,7 +14,7 @@ import { SMITHY_CONTEXT_KEY, } from "@smithy/types"; -import { TagResourceInput, TagResourceOutput } from "../models/models_0"; +import { TagResourceInput, TagResourceInputFilterSensitiveLog, TagResourceOutput } from "../models/models_0"; import { de_TagResourceCommand, se_TagResourceCommand } from "../protocols/Aws_restJson1"; import { ResourceExplorer2ClientResolvedConfig, @@ -71,9 +71,13 @@ export interface TagResourceCommandOutput extends TagResourceOutput, __MetadataB * permissions.

* * @throws {@link ConflictException} (client fault) - *

The request failed because either you specified parameters that didn’t match the + *

If you attempted to create a view, then the request failed because either you specified parameters that didn’t match the * original request, or you attempted to create a view with a name that already exists in * this Amazon Web Services Region.

+ *

If you attempted to create an index, then the request failed because either you specified parameters that didn't match + * the original request, or an index already exists in the current Amazon Web Services Region.

+ *

If you attempted to update an index type to AGGREGATOR, then the request failed because you already + * have an AGGREGATOR index in a different Amazon Web Services Region.

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

The request failed because of internal service error. Try your request again @@ -81,8 +85,8 @@ export interface TagResourceCommandOutput extends TagResourceOutput, __MetadataB * * @throws {@link ThrottlingException} (client fault) *

The request failed because you exceeded a rate limit for this operation. For more - * information, see Quotas - * for Resource Explorer.

+ * information, see Quotas for + * Resource Explorer.

* * @throws {@link UnauthorizedException} (client fault) *

The principal making the request isn't permitted to perform the operation.

@@ -135,7 +139,7 @@ export class TagResourceCommand extends $Command< logger, clientName, commandName, - inputFilterSensitiveLog: (_: any) => _, + inputFilterSensitiveLog: TagResourceInputFilterSensitiveLog, outputFilterSensitiveLog: (_: any) => _, [SMITHY_CONTEXT_KEY]: { service: "ResourceExplorer", diff --git a/clients/client-resource-explorer-2/src/commands/UntagResourceCommand.ts b/clients/client-resource-explorer-2/src/commands/UntagResourceCommand.ts index 3eba2a4657c36..ec168749099eb 100644 --- a/clients/client-resource-explorer-2/src/commands/UntagResourceCommand.ts +++ b/clients/client-resource-explorer-2/src/commands/UntagResourceCommand.ts @@ -14,7 +14,7 @@ import { SMITHY_CONTEXT_KEY, } from "@smithy/types"; -import { UntagResourceInput, UntagResourceOutput } from "../models/models_0"; +import { UntagResourceInput, UntagResourceInputFilterSensitiveLog, UntagResourceOutput } from "../models/models_0"; import { de_UntagResourceCommand, se_UntagResourceCommand } from "../protocols/Aws_restJson1"; import { ResourceExplorer2ClientResolvedConfig, @@ -80,8 +80,8 @@ export interface UntagResourceCommandOutput extends UntagResourceOutput, __Metad * * @throws {@link ThrottlingException} (client fault) *

The request failed because you exceeded a rate limit for this operation. For more - * information, see Quotas - * for Resource Explorer.

+ * information, see Quotas for + * Resource Explorer.

* * @throws {@link UnauthorizedException} (client fault) *

The principal making the request isn't permitted to perform the operation.

@@ -134,7 +134,7 @@ export class UntagResourceCommand extends $Command< logger, clientName, commandName, - inputFilterSensitiveLog: (_: any) => _, + inputFilterSensitiveLog: UntagResourceInputFilterSensitiveLog, outputFilterSensitiveLog: (_: any) => _, [SMITHY_CONTEXT_KEY]: { service: "ResourceExplorer", diff --git a/clients/client-resource-explorer-2/src/commands/UpdateIndexTypeCommand.ts b/clients/client-resource-explorer-2/src/commands/UpdateIndexTypeCommand.ts index 78e95dec6e55f..b5d3ba6c922fe 100644 --- a/clients/client-resource-explorer-2/src/commands/UpdateIndexTypeCommand.ts +++ b/clients/client-resource-explorer-2/src/commands/UpdateIndexTypeCommand.ts @@ -130,9 +130,13 @@ export interface UpdateIndexTypeCommandOutput extends UpdateIndexTypeOutput, __M * permissions.

* * @throws {@link ConflictException} (client fault) - *

The request failed because either you specified parameters that didn’t match the + *

If you attempted to create a view, then the request failed because either you specified parameters that didn’t match the * original request, or you attempted to create a view with a name that already exists in * this Amazon Web Services Region.

+ *

If you attempted to create an index, then the request failed because either you specified parameters that didn't match + * the original request, or an index already exists in the current Amazon Web Services Region.

+ *

If you attempted to update an index type to AGGREGATOR, then the request failed because you already + * have an AGGREGATOR index in a different Amazon Web Services Region.

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

The request failed because of internal service error. Try your request again @@ -147,8 +151,8 @@ export interface UpdateIndexTypeCommandOutput extends UpdateIndexTypeOutput, __M * * @throws {@link ThrottlingException} (client fault) *

The request failed because you exceeded a rate limit for this operation. For more - * information, see Quotas - * for Resource Explorer.

+ * information, see Quotas for + * Resource Explorer.

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

You provided an invalid value for one of the operation's parameters. Check the syntax diff --git a/clients/client-resource-explorer-2/src/commands/UpdateViewCommand.ts b/clients/client-resource-explorer-2/src/commands/UpdateViewCommand.ts index c165f38d2e354..675bece66ff41 100644 --- a/clients/client-resource-explorer-2/src/commands/UpdateViewCommand.ts +++ b/clients/client-resource-explorer-2/src/commands/UpdateViewCommand.ts @@ -105,8 +105,8 @@ export interface UpdateViewCommandOutput extends UpdateViewOutput, __MetadataBea * * @throws {@link ThrottlingException} (client fault) *

The request failed because you exceeded a rate limit for this operation. For more - * information, see Quotas - * for Resource Explorer.

+ * information, see Quotas for + * Resource Explorer.

* * @throws {@link UnauthorizedException} (client fault) *

The principal making the request isn't permitted to perform the operation.

diff --git a/clients/client-resource-explorer-2/src/commands/index.ts b/clients/client-resource-explorer-2/src/commands/index.ts index 4d9663f34fb6c..5f42cefee8dfd 100644 --- a/clients/client-resource-explorer-2/src/commands/index.ts +++ b/clients/client-resource-explorer-2/src/commands/index.ts @@ -6,10 +6,12 @@ export * from "./CreateViewCommand"; export * from "./DeleteIndexCommand"; export * from "./DeleteViewCommand"; export * from "./DisassociateDefaultViewCommand"; +export * from "./GetAccountLevelServiceConfigurationCommand"; export * from "./GetDefaultViewCommand"; export * from "./GetIndexCommand"; export * from "./GetViewCommand"; export * from "./ListIndexesCommand"; +export * from "./ListIndexesForMembersCommand"; export * from "./ListSupportedResourceTypesCommand"; export * from "./ListTagsForResourceCommand"; export * from "./ListViewsCommand"; diff --git a/clients/client-resource-explorer-2/src/models/models_0.ts b/clients/client-resource-explorer-2/src/models/models_0.ts index 0abbc0ce97e08..ba9f94036c7c4 100644 --- a/clients/client-resource-explorer-2/src/models/models_0.ts +++ b/clients/client-resource-explorer-2/src/models/models_0.ts @@ -101,8 +101,8 @@ export class ResourceNotFoundException extends __BaseException { /** * @public *

The request failed because you exceeded a rate limit for this operation. For more - * information, see Quotas - * for Resource Explorer.

+ * information, see Quotas for + * Resource Explorer.

*/ export class ThrottlingException extends __BaseException { readonly name: "ThrottlingException" = "ThrottlingException"; @@ -169,6 +169,20 @@ export class ValidationException extends __BaseException { } } +/** + * @public + * @enum + */ +export const AWSServiceAccessStatus = { + DISABLED: "DISABLED", + ENABLED: "ENABLED", +} as const; + +/** + * @public + */ +export type AWSServiceAccessStatus = (typeof AWSServiceAccessStatus)[keyof typeof AWSServiceAccessStatus]; + /** * @public */ @@ -333,9 +347,13 @@ export class UnauthorizedException extends __BaseException { /** * @public - *

The request failed because either you specified parameters that didn’t match the + *

If you attempted to create a view, then the request failed because either you specified parameters that didn’t match the * original request, or you attempted to create a view with a name that already exists in * this Amazon Web Services Region.

+ *

If you attempted to create an index, then the request failed because either you specified parameters that didn't match + * the original request, or an index already exists in the current Amazon Web Services Region.

+ *

If you attempted to update an index type to AGGREGATOR, then the request failed because you already + * have an AGGREGATOR index in a different Amazon Web Services Region.

*/ export class ConflictException extends __BaseException { readonly name: "ConflictException" = "ConflictException"; @@ -363,7 +381,7 @@ export interface CreateIndexInput { * @public *

This value helps ensure idempotency. Resource Explorer uses this value to prevent the * accidental creation of duplicate versions. We recommend that you generate a UUID-type - * value to ensure the uniqueness of your views.

+ * value to ensure the uniqueness of your index.

*/ ClientToken?: string; @@ -538,7 +556,7 @@ export interface ListIndexesInput { * NextToken response in a previous request. A NextToken response * indicates that more output is available. Set this parameter to the value of the previous * call's NextToken response to indicate where the output should continue - * from.

+ * from. The pagination tokens expire after 24 hours.

*/ NextToken?: string; } @@ -570,21 +588,19 @@ export interface Index { /** * @public - *

The type of index. It can be one of the following - * values:

+ *

The type of index. It can be one of the following values:

*
    *
  • *

    - * LOCAL – The index contains information - * about resources from only the same Amazon Web Services Region.

    + * LOCAL – The index contains information about resources + * from only the same Amazon Web Services Region.

    *
  • *
  • *

    - * AGGREGATOR – Resource Explorer replicates copies - * of the indexed information about resources in all other Amazon Web Services Regions to the - * aggregator index. This lets search results in the Region with the aggregator index to - * include resources from all Regions in the account where Resource Explorer is turned - * on.

    + * AGGREGATOR – Resource Explorer replicates copies of the indexed + * information about resources in all other Amazon Web Services Regions to the aggregator index. This + * lets search results in the Region with the aggregator index to include resources + * from all Regions in the account where Resource Explorer is turned on.

    *
  • *
*/ @@ -606,7 +622,8 @@ export interface ListIndexesOutput { *

If present, indicates that more output is available than is * included in the current response. Use this value in the NextToken request parameter * in a subsequent call to the operation to get the next part of the output. You should repeat this - * until the NextToken response element comes back as null.

+ * until the NextToken response element comes back as null. + * The pagination tokens expire after 24 hours.

*/ NextToken?: string; } @@ -723,6 +740,13 @@ export interface CreateViewInput { */ IncludedProperties?: IncludedProperty[]; + /** + * @public + *

The root ARN of the account, an organizational unit (OU), or an organization ARN. If + * left empty, the default is account.

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

An array of strings that specify which resources are included in the results of @@ -820,7 +844,7 @@ export interface ListViewsInput { * NextToken response in a previous request. A NextToken response * indicates that more output is available. Set this parameter to the value of the previous * call's NextToken response to indicate where the output should continue - * from.

+ * from. The pagination tokens expire after 24 hours.

*/ NextToken?: string; @@ -857,7 +881,8 @@ export interface ListViewsOutput { *

If present, indicates that more output is available than is * included in the current response. Use this value in the NextToken request parameter * in a subsequent call to the operation to get the next part of the output. You should repeat this - * until the NextToken response element comes back as null.

+ * until the NextToken response element comes back as null. + * The pagination tokens expire after 24 hours.

*/ NextToken?: string; } @@ -911,6 +936,37 @@ export interface UpdateViewOutput { View?: View; } +/** + * @public + *

This is a structure that contains the status of Amazon Web Services service access, and whether you have a valid service-linked role to enable + * multi-account search for your organization.

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

This value displays whether your Amazon Web Services service access is ENABLED or DISABLED.

+ */ + AWSServiceAccessStatus: AWSServiceAccessStatus | undefined; + + /** + * @public + *

This value shows whether or not you have a valid a service-linked role required to start the multi-account search feature.

+ */ + ServiceLinkedRole?: string; +} + +/** + * @public + */ +export interface GetAccountLevelServiceConfigurationOutput { + /** + * @public + *

Details about the organization, and whether configuration is ENABLED or + * DISABLED.

+ */ + OrgConfiguration?: OrgConfiguration; +} + /** * @public */ @@ -984,6 +1040,112 @@ export interface GetIndexOutput { Tags?: Record; } +/** + * @public + */ +export interface ListIndexesForMembersInput { + /** + * @public + *

The account IDs will limit the output to only indexes from these + * accounts.

+ */ + AccountIdList: string[] | undefined; + + /** + * @public + *

The maximum number of results that you want included on each page of the + * response. If you do not include this parameter, it defaults to a value appropriate to the + * operation. If additional items exist beyond those included in the current response, the + * NextToken response element is present and has a value (is not null). Include that + * value as the NextToken request parameter in the next call to the operation to get + * the next part of the results.

+ * + *

An API operation can return fewer results than the maximum even when there are + * more results available. You should check NextToken after every operation to ensure + * that you receive all of the results.

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

The parameter for receiving additional results if you receive a + * NextToken response in a previous request. A NextToken response + * indicates that more output is available. Set this parameter to the value of the previous + * call's NextToken response to indicate where the output should continue + * from. The pagination tokens expire after 24 hours.

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

An index is the data store used by Amazon Web Services Resource Explorer to hold information about your Amazon Web Services + * resources that the service discovers.

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

The account ID for the index.

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

The Amazon Web Services Region in which the index + * exists.

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

The Amazon resource name (ARN) of the index.

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

The type of index. It can be one of the following values:

+ *
    + *
  • + *

    + * LOCAL – The index contains information about resources + * from only the same Amazon Web Services Region.

    + *
  • + *
  • + *

    + * AGGREGATOR – Resource Explorer replicates copies of the indexed + * information about resources in all other Amazon Web Services Regions to the aggregator index. This + * lets search results in the Region with the aggregator index to include resources + * from all Regions in the account where Resource Explorer is turned on.

    + *
  • + *
+ */ + Type?: IndexType; +} + +/** + * @public + */ +export interface ListIndexesForMembersOutput { + /** + * @public + *

A structure that contains the details and status of each + * index.

+ */ + Indexes?: MemberIndex[]; + + /** + * @public + *

If present, indicates that more output is available than is + * included in the current response. Use this value in the NextToken request parameter + * in a subsequent call to the operation to get the next part of the output. You should repeat this + * until the NextToken response element comes back as null. + * The pagination tokens expire after 24 hours.

+ */ + NextToken?: string; +} + /** * @public */ @@ -994,7 +1156,7 @@ export interface ListSupportedResourceTypesInput { * NextToken response in a previous request. A NextToken response * indicates that more output is available. Set this parameter to the value of the previous * call's NextToken response to indicate where the output should continue - * from.

+ * from. The pagination tokens expire after 24 hours.

*/ NextToken?: string; @@ -1049,7 +1211,8 @@ export interface ListSupportedResourceTypesOutput { *

If present, indicates that more output is available than is * included in the current response. Use this value in the NextToken request parameter * in a subsequent call to the operation to get the next part of the output. You should repeat this - * until the NextToken response element comes back as null.

+ * until the NextToken response element comes back as null. + * The pagination tokens expire after 24 hours.

*/ NextToken?: string; } @@ -1243,7 +1406,7 @@ export interface SearchInput { * NextToken response in a previous request. A NextToken response * indicates that more output is available. Set this parameter to the value of the previous * call's NextToken response to indicate where the output should continue - * from.

+ * from. The pagination tokens expire after 24 hours.

*/ NextToken?: string; } @@ -1263,7 +1426,8 @@ export interface SearchOutput { *

If present, indicates that more output is available than is * included in the current response. Use this value in the NextToken request parameter * in a subsequent call to the operation to get the next part of the output. You should repeat this - * until the NextToken response element comes back as null.

+ * until the NextToken response element comes back as null. + * The pagination tokens expire after 24 hours.

*/ NextToken?: string; @@ -1351,12 +1515,21 @@ export const BatchGetViewOutputFilterSensitiveLog = (obj: BatchGetViewOutput): a ...(obj.Views && { Views: obj.Views.map((item) => ViewFilterSensitiveLog(item)) }), }); +/** + * @internal + */ +export const CreateIndexInputFilterSensitiveLog = (obj: CreateIndexInput): any => ({ + ...obj, + ...(obj.Tags && { Tags: SENSITIVE_STRING }), +}); + /** * @internal */ export const CreateViewInputFilterSensitiveLog = (obj: CreateViewInput): any => ({ ...obj, ...(obj.Filters && { Filters: SENSITIVE_STRING }), + ...(obj.Tags && { Tags: SENSITIVE_STRING }), }); /** @@ -1373,6 +1546,7 @@ export const CreateViewOutputFilterSensitiveLog = (obj: CreateViewOutput): any = export const GetViewOutputFilterSensitiveLog = (obj: GetViewOutput): any => ({ ...obj, ...(obj.View && { View: ViewFilterSensitiveLog(obj.View) }), + ...(obj.Tags && { Tags: SENSITIVE_STRING }), }); /** @@ -1391,6 +1565,22 @@ export const UpdateViewOutputFilterSensitiveLog = (obj: UpdateViewOutput): any = ...(obj.View && { View: ViewFilterSensitiveLog(obj.View) }), }); +/** + * @internal + */ +export const GetIndexOutputFilterSensitiveLog = (obj: GetIndexOutput): any => ({ + ...obj, + ...(obj.Tags && { Tags: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const ListTagsForResourceOutputFilterSensitiveLog = (obj: ListTagsForResourceOutput): any => ({ + ...obj, + ...(obj.Tags && { Tags: SENSITIVE_STRING }), +}); + /** * @internal */ @@ -1398,3 +1588,19 @@ export const SearchInputFilterSensitiveLog = (obj: SearchInput): any => ({ ...obj, ...(obj.QueryString && { QueryString: SENSITIVE_STRING }), }); + +/** + * @internal + */ +export const TagResourceInputFilterSensitiveLog = (obj: TagResourceInput): any => ({ + ...obj, + ...(obj.Tags && { Tags: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const UntagResourceInputFilterSensitiveLog = (obj: UntagResourceInput): any => ({ + ...obj, + ...(obj.tagKeys && { tagKeys: SENSITIVE_STRING }), +}); diff --git a/clients/client-resource-explorer-2/src/pagination/ListIndexesForMembersPaginator.ts b/clients/client-resource-explorer-2/src/pagination/ListIndexesForMembersPaginator.ts new file mode 100644 index 0000000000000..00e43be76257d --- /dev/null +++ b/clients/client-resource-explorer-2/src/pagination/ListIndexesForMembersPaginator.ts @@ -0,0 +1,50 @@ +// smithy-typescript generated code +import { Paginator } from "@smithy/types"; + +import { + ListIndexesForMembersCommand, + ListIndexesForMembersCommandInput, + ListIndexesForMembersCommandOutput, +} from "../commands/ListIndexesForMembersCommand"; +import { ResourceExplorer2Client } from "../ResourceExplorer2Client"; +import { ResourceExplorer2PaginationConfiguration } from "./Interfaces"; + +/** + * @internal + */ +const makePagedClientRequest = async ( + client: ResourceExplorer2Client, + input: ListIndexesForMembersCommandInput, + ...args: any +): Promise => { + // @ts-ignore + return await client.send(new ListIndexesForMembersCommand(input), ...args); +}; +/** + * @public + */ +export async function* paginateListIndexesForMembers( + config: ResourceExplorer2PaginationConfiguration, + input: ListIndexesForMembersCommandInput, + ...additionalArguments: any +): Paginator { + // ToDo: replace with actual type instead of typeof input.NextToken + let token: typeof input.NextToken | undefined = config.startingToken || undefined; + let hasNext = true; + let page: ListIndexesForMembersCommandOutput; + while (hasNext) { + input.NextToken = token; + input["MaxResults"] = config.pageSize; + if (config.client instanceof ResourceExplorer2Client) { + page = await makePagedClientRequest(config.client, input, ...additionalArguments); + } else { + throw new Error("Invalid client, expected ResourceExplorer2 | ResourceExplorer2Client"); + } + yield page; + const prevToken = token; + token = page.NextToken; + hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken)); + } + // @ts-ignore + return undefined; +} diff --git a/clients/client-resource-explorer-2/src/pagination/index.ts b/clients/client-resource-explorer-2/src/pagination/index.ts index b2e21d9fc2a5c..b86baa4a0526b 100644 --- a/clients/client-resource-explorer-2/src/pagination/index.ts +++ b/clients/client-resource-explorer-2/src/pagination/index.ts @@ -1,5 +1,6 @@ // smithy-typescript generated code export * from "./Interfaces"; +export * from "./ListIndexesForMembersPaginator"; export * from "./ListIndexesPaginator"; export * from "./ListSupportedResourceTypesPaginator"; export * from "./ListViewsPaginator"; diff --git a/clients/client-resource-explorer-2/src/protocols/Aws_restJson1.ts b/clients/client-resource-explorer-2/src/protocols/Aws_restJson1.ts index 789e5aee32fae..801fcf5363b88 100644 --- a/clients/client-resource-explorer-2/src/protocols/Aws_restJson1.ts +++ b/clients/client-resource-explorer-2/src/protocols/Aws_restJson1.ts @@ -35,10 +35,18 @@ import { DisassociateDefaultViewCommandInput, DisassociateDefaultViewCommandOutput, } from "../commands/DisassociateDefaultViewCommand"; +import { + GetAccountLevelServiceConfigurationCommandInput, + GetAccountLevelServiceConfigurationCommandOutput, +} from "../commands/GetAccountLevelServiceConfigurationCommand"; import { GetDefaultViewCommandInput, GetDefaultViewCommandOutput } from "../commands/GetDefaultViewCommand"; import { GetIndexCommandInput, GetIndexCommandOutput } from "../commands/GetIndexCommand"; import { GetViewCommandInput, GetViewCommandOutput } from "../commands/GetViewCommand"; import { ListIndexesCommandInput, ListIndexesCommandOutput } from "../commands/ListIndexesCommand"; +import { + ListIndexesForMembersCommandInput, + ListIndexesForMembersCommandOutput, +} from "../commands/ListIndexesForMembersCommand"; import { ListSupportedResourceTypesCommandInput, ListSupportedResourceTypesCommandOutput, @@ -176,6 +184,7 @@ export const se_CreateViewCommand = async ( ClientToken: [true, (_) => _ ?? generateIdempotencyToken()], Filters: (_) => _json(_), IncludedProperties: (_) => _json(_), + Scope: [], Tags: (_) => _json(_), ViewName: [], }) @@ -275,6 +284,32 @@ export const se_DisassociateDefaultViewCommand = async ( }); }; +/** + * serializeAws_restJson1GetAccountLevelServiceConfigurationCommand + */ +export const se_GetAccountLevelServiceConfigurationCommand = async ( + input: GetAccountLevelServiceConfigurationCommandInput, + 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 || ""}` + "/GetAccountLevelServiceConfiguration"; + let body: any; + body = ""; + return new __HttpRequest({ + protocol, + hostname, + port, + method: "POST", + headers, + path: resolvedPath, + body, + }); +}; + /** * serializeAws_restJson1GetDefaultViewCommand */ @@ -386,6 +421,37 @@ export const se_ListIndexesCommand = async ( }); }; +/** + * serializeAws_restJson1ListIndexesForMembersCommand + */ +export const se_ListIndexesForMembersCommand = async ( + input: ListIndexesForMembersCommandInput, + 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 || ""}` + "/ListIndexesForMembers"; + let body: any; + body = JSON.stringify( + take(input, { + AccountIdList: (_) => _json(_), + MaxResults: [], + NextToken: [], + }) + ); + return new __HttpRequest({ + protocol, + hostname, + port, + method: "POST", + headers, + path: resolvedPath, + body, + }); +}; + /** * serializeAws_restJson1ListSupportedResourceTypesCommand */ @@ -1024,6 +1090,9 @@ const de_DisassociateDefaultViewCommandError = async ( case "InternalServerException": case "com.amazonaws.resourceexplorer2#InternalServerException": throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.resourceexplorer2#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resourceexplorer2#ThrottlingException": throw await de_ThrottlingExceptionRes(parsedOutput, context); @@ -1040,6 +1109,62 @@ const de_DisassociateDefaultViewCommandError = async ( } }; +/** + * deserializeAws_restJson1GetAccountLevelServiceConfigurationCommand + */ +export const de_GetAccountLevelServiceConfigurationCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_GetAccountLevelServiceConfigurationCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + OrgConfiguration: _json, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1GetAccountLevelServiceConfigurationCommandError + */ +const de_GetAccountLevelServiceConfigurationCommandError = 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.resourceexplorer2#AccessDeniedException": + throw await de_AccessDeniedExceptionRes(parsedOutput, context); + case "InternalServerException": + case "com.amazonaws.resourceexplorer2#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.resourceexplorer2#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.resourceexplorer2#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + /** * deserializeAws_restJson1GetDefaultViewCommand */ @@ -1285,6 +1410,63 @@ const de_ListIndexesCommandError = async ( } }; +/** + * deserializeAws_restJson1ListIndexesForMembersCommand + */ +export const de_ListIndexesForMembersCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_ListIndexesForMembersCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + Indexes: _json, + NextToken: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListIndexesForMembersCommandError + */ +const de_ListIndexesForMembersCommandError = 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.resourceexplorer2#AccessDeniedException": + throw await de_AccessDeniedExceptionRes(parsedOutput, context); + case "InternalServerException": + case "com.amazonaws.resourceexplorer2#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.resourceexplorer2#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.resourceexplorer2#ValidationException": + throw await de_ValidationExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + /** * deserializeAws_restJson1ListSupportedResourceTypesCommand */ @@ -1924,6 +2106,8 @@ const de_ValidationExceptionRes = async (parsedOutput: any, context: __SerdeCont return __decorateServiceException(exception, parsedOutput.body); }; +// se_AccountIdList omitted. + // se_IncludedProperty omitted. // se_IncludedPropertyList omitted. @@ -1948,6 +2132,12 @@ const de_ValidationExceptionRes = async (parsedOutput: any, context: __SerdeCont // de_IndexList omitted. +// de_MemberIndex omitted. + +// de_MemberIndexList omitted. + +// de_OrgConfiguration omitted. + // de_RegionList omitted. /** diff --git a/codegen/sdk-codegen/aws-models/resource-explorer-2.json b/codegen/sdk-codegen/aws-models/resource-explorer-2.json index b230f82693551..a3d09094be829 100644 --- a/codegen/sdk-codegen/aws-models/resource-explorer-2.json +++ b/codegen/sdk-codegen/aws-models/resource-explorer-2.json @@ -1,6 +1,21 @@ { "smithy": "2.0", "shapes": { + "com.amazonaws.resourceexplorer2#AWSServiceAccessStatus": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "name": "ENABLED", + "value": "ENABLED" + }, + { + "name": "DISABLED", + "value": "DISABLED" + } + ] + } + }, "com.amazonaws.resourceexplorer2#AccessDeniedException": { "type": "structure", "members": { @@ -14,6 +29,21 @@ "smithy.api#httpError": 403 } }, + "com.amazonaws.resourceexplorer2#AccountId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + } + } + }, + "com.amazonaws.resourceexplorer2#AccountIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.resourceexplorer2#AccountId" + } + }, "com.amazonaws.resourceexplorer2#AssociateDefaultView": { "type": "operation", "input": { @@ -229,7 +259,7 @@ } }, "traits": { - "smithy.api#documentation": "

The request failed because either you specified parameters that didn’t match the\n original request, or you attempted to create a view with a name that already exists in\n this Amazon Web Services Region.

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

If you attempted to create a view, then the request failed because either you specified parameters that didn’t match the\n original request, or you attempted to create a view with a name that already exists in\n this Amazon Web Services Region.

\n

If you attempted to create an index, then the request failed because either you specified parameters that didn't match\n the original request, or an index already exists in the current Amazon Web Services Region.

\n

If you attempted to update an index type to AGGREGATOR, then the request failed because you already\n have an AGGREGATOR index in a different Amazon Web Services Region.

", "smithy.api#error": "client", "smithy.api#httpError": 409 } @@ -275,7 +305,7 @@ "target": "smithy.api#String", "traits": { "aws.cloudformation#cfnExcludeProperty": {}, - "smithy.api#documentation": "

This value helps ensure idempotency. Resource Explorer uses this value to prevent the\n accidental creation of duplicate versions. We recommend that you generate a UUID-type\n value to ensure the uniqueness of your views.

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

This value helps ensure idempotency. Resource Explorer uses this value to prevent the\n accidental creation of duplicate versions. We recommend that you generate a UUID-type\n value to ensure the uniqueness of your index.

", "smithy.api#idempotencyToken": {} } }, @@ -379,6 +409,16 @@ "smithy.api#documentation": "

Specifies optional fields that you want included in search results from this\n view. It is a list of objects that each describe a field to include.

\n

The default is an empty list, with no optional fields included in the results.

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

The root ARN of the account, an organizational unit (OU), or an organization ARN. If\n left empty, the default is account.

", + "smithy.api#length": { + "min": 1, + "max": 2048 + } + } + }, "Filters": { "target": "com.amazonaws.resourceexplorer2#SearchFilter", "traits": { @@ -568,6 +608,9 @@ { "target": "com.amazonaws.resourceexplorer2#InternalServerException" }, + { + "target": "com.amazonaws.resourceexplorer2#ResourceNotFoundException" + }, { "target": "com.amazonaws.resourceexplorer2#ThrottlingException" }, @@ -584,6 +627,51 @@ "smithy.api#idempotent": {} } }, + "com.amazonaws.resourceexplorer2#GetAccountLevelServiceConfiguration": { + "type": "operation", + "input": { + "target": "smithy.api#Unit" + }, + "output": { + "target": "com.amazonaws.resourceexplorer2#GetAccountLevelServiceConfigurationOutput" + }, + "errors": [ + { + "target": "com.amazonaws.resourceexplorer2#AccessDeniedException" + }, + { + "target": "com.amazonaws.resourceexplorer2#InternalServerException" + }, + { + "target": "com.amazonaws.resourceexplorer2#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.resourceexplorer2#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves the status of your account's Amazon Web Services service access, and validates the service\n linked role required to access the multi-account search feature. Only the management\n account or a delegated administrator with service access enabled can invoke this API\n call.

", + "smithy.api#http": { + "method": "POST", + "uri": "/GetAccountLevelServiceConfiguration" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.resourceexplorer2#GetAccountLevelServiceConfigurationOutput": { + "type": "structure", + "members": { + "OrgConfiguration": { + "target": "com.amazonaws.resourceexplorer2#OrgConfiguration", + "traits": { + "smithy.api#documentation": "

Details about the organization, and whether configuration is ENABLED or\n DISABLED.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.resourceexplorer2#GetDefaultView": { "type": "operation", "input": { @@ -831,7 +919,7 @@ "Type": { "target": "com.amazonaws.resourceexplorer2#IndexType", "traits": { - "smithy.api#documentation": "

The type of index. It can be one of the following\n values:

\n
    \n
  • \n

    \n LOCAL – The index contains information\n about resources from only the same Amazon Web Services Region.

    \n
  • \n
  • \n

    \n AGGREGATOR – Resource Explorer replicates copies\n of the indexed information about resources in all other Amazon Web Services Regions to the\n aggregator index. This lets search results in the Region with the aggregator index to\n include resources from all Regions in the account where Resource Explorer is turned\n on.

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

The type of index. It can be one of the following values:

\n
    \n
  • \n

    \n LOCAL – The index contains information about resources\n from only the same Amazon Web Services Region.

    \n
  • \n
  • \n

    \n AGGREGATOR – Resource Explorer replicates copies of the indexed\n information about resources in all other Amazon Web Services Regions to the aggregator index. This\n lets search results in the Region with the aggregator index to include resources\n from all Regions in the account where Resource Explorer is turned on.

    \n
  • \n
" } } }, @@ -944,6 +1032,102 @@ "smithy.api#readonly": {} } }, + "com.amazonaws.resourceexplorer2#ListIndexesForMembers": { + "type": "operation", + "input": { + "target": "com.amazonaws.resourceexplorer2#ListIndexesForMembersInput" + }, + "output": { + "target": "com.amazonaws.resourceexplorer2#ListIndexesForMembersOutput" + }, + "errors": [ + { + "target": "com.amazonaws.resourceexplorer2#AccessDeniedException" + }, + { + "target": "com.amazonaws.resourceexplorer2#InternalServerException" + }, + { + "target": "com.amazonaws.resourceexplorer2#ThrottlingException" + }, + { + "target": "com.amazonaws.resourceexplorer2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves a list of a member's indexes in all Amazon Web Services Regions that are currently\n collecting resource information for Amazon Web Services Resource Explorer. Only the management account or a\n delegated administrator with service access enabled can invoke this API call.\n

", + "smithy.api#http": { + "method": "POST", + "uri": "/ListIndexesForMembers" + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "pageSize": "MaxResults", + "outputToken": "NextToken", + "items": "Indexes" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.resourceexplorer2#ListIndexesForMembersInput": { + "type": "structure", + "members": { + "AccountIdList": { + "target": "com.amazonaws.resourceexplorer2#AccountIdList", + "traits": { + "smithy.api#documentation": "

The account IDs will limit the output to only indexes from these\n accounts.

", + "smithy.api#length": { + "min": 1, + "max": 10 + }, + "smithy.api#required": {} + } + }, + "MaxResults": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The maximum number of results that you want included on each page of the \n response. If you do not include this parameter, it defaults to a value appropriate to the \n operation. If additional items exist beyond those included in the current response, the \n NextToken response element is present and has a value (is not null). Include that \n value as the NextToken request parameter in the next call to the operation to get \n the next part of the results.

\n \n

An API operation can return fewer results than the maximum even when there are \n more results available. You should check NextToken after every operation to ensure \n that you receive all of the results.

\n
", + "smithy.api#range": { + "min": 1, + "max": 10 + } + } + }, + "NextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The parameter for receiving additional results if you receive a \n NextToken response in a previous request. A NextToken response \n indicates that more output is available. Set this parameter to the value of the previous \n call's NextToken response to indicate where the output should continue \n from. The pagination tokens expire after 24 hours.

", + "smithy.api#length": { + "min": 1, + "max": 2048 + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.resourceexplorer2#ListIndexesForMembersOutput": { + "type": "structure", + "members": { + "Indexes": { + "target": "com.amazonaws.resourceexplorer2#MemberIndexList", + "traits": { + "smithy.api#documentation": "

A structure that contains the details and status of each\n index.

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

If present, indicates that more output is available than is \n included in the current response. Use this value in the NextToken request parameter \n in a subsequent call to the operation to get the next part of the output. You should repeat this \n until the NextToken response element comes back as null.\n The pagination tokens expire after 24 hours.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.resourceexplorer2#ListIndexesInput": { "type": "structure", "members": { @@ -976,7 +1160,7 @@ "NextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The parameter for receiving additional results if you receive a \n NextToken response in a previous request. A NextToken response \n indicates that more output is available. Set this parameter to the value of the previous \n call's NextToken response to indicate where the output should continue \n from.

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

The parameter for receiving additional results if you receive a \n NextToken response in a previous request. A NextToken response \n indicates that more output is available. Set this parameter to the value of the previous \n call's NextToken response to indicate where the output should continue \n from. The pagination tokens expire after 24 hours.

", "smithy.api#length": { "min": 1, "max": 2048 @@ -997,7 +1181,7 @@ "NextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

If present, indicates that more output is available than is \n included in the current response. Use this value in the NextToken request parameter \n in a subsequent call to the operation to get the next part of the output. You should repeat this \n until the NextToken response element comes back as null.

" + "smithy.api#documentation": "

If present, indicates that more output is available than is \n included in the current response. Use this value in the NextToken request parameter \n in a subsequent call to the operation to get the next part of the output. You should repeat this \n until the NextToken response element comes back as null.\n The pagination tokens expire after 24 hours.

" } } } @@ -1045,7 +1229,7 @@ "NextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The parameter for receiving additional results if you receive a \n NextToken response in a previous request. A NextToken response \n indicates that more output is available. Set this parameter to the value of the previous \n call's NextToken response to indicate where the output should continue \n from.

" + "smithy.api#documentation": "

The parameter for receiving additional results if you receive a \n NextToken response in a previous request. A NextToken response \n indicates that more output is available. Set this parameter to the value of the previous \n call's NextToken response to indicate where the output should continue \n from. The pagination tokens expire after 24 hours.

" } }, "MaxResults": { @@ -1072,7 +1256,7 @@ "NextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

If present, indicates that more output is available than is \n included in the current response. Use this value in the NextToken request parameter \n in a subsequent call to the operation to get the next part of the output. You should repeat this \n until the NextToken response element comes back as null.

" + "smithy.api#documentation": "

If present, indicates that more output is available than is \n included in the current response. Use this value in the NextToken request parameter \n in a subsequent call to the operation to get the next part of the output. You should repeat this \n until the NextToken response element comes back as null.\n The pagination tokens expire after 24 hours.

" } } } @@ -1181,7 +1365,7 @@ "NextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The parameter for receiving additional results if you receive a \n NextToken response in a previous request. A NextToken response \n indicates that more output is available. Set this parameter to the value of the previous \n call's NextToken response to indicate where the output should continue \n from.

" + "smithy.api#documentation": "

The parameter for receiving additional results if you receive a \n NextToken response in a previous request. A NextToken response \n indicates that more output is available. Set this parameter to the value of the previous \n call's NextToken response to indicate where the output should continue \n from. The pagination tokens expire after 24 hours.

" } }, "MaxResults": { @@ -1190,7 +1374,7 @@ "smithy.api#documentation": "

The maximum number of results that you want included on each page of the \n response. If you do not include this parameter, it defaults to a value appropriate to the \n operation. If additional items exist beyond those included in the current response, the \n NextToken response element is present and has a value (is not null). Include that \n value as the NextToken request parameter in the next call to the operation to get \n the next part of the results.

\n \n

An API operation can return fewer results than the maximum even when there are \n more results available. You should check NextToken after every operation to ensure \n that you receive all of the results.

\n
", "smithy.api#range": { "min": 1, - "max": 20 + "max": 50 } } } @@ -1208,11 +1392,70 @@ "NextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

If present, indicates that more output is available than is \n included in the current response. Use this value in the NextToken request parameter \n in a subsequent call to the operation to get the next part of the output. You should repeat this \n until the NextToken response element comes back as null.

" + "smithy.api#documentation": "

If present, indicates that more output is available than is \n included in the current response. Use this value in the NextToken request parameter \n in a subsequent call to the operation to get the next part of the output. You should repeat this \n until the NextToken response element comes back as null.\n The pagination tokens expire after 24 hours.

" } } } }, + "com.amazonaws.resourceexplorer2#MemberIndex": { + "type": "structure", + "members": { + "AccountId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The account ID for the index.

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

The Amazon Web Services Region in which the index\n exists.

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

The Amazon resource name (ARN) of the index.

" + } + }, + "Type": { + "target": "com.amazonaws.resourceexplorer2#IndexType", + "traits": { + "smithy.api#documentation": "

The type of index. It can be one of the following values:

\n
    \n
  • \n

    \n LOCAL – The index contains information about resources\n from only the same Amazon Web Services Region.

    \n
  • \n
  • \n

    \n AGGREGATOR – Resource Explorer replicates copies of the indexed\n information about resources in all other Amazon Web Services Regions to the aggregator index. This\n lets search results in the Region with the aggregator index to include resources\n from all Regions in the account where Resource Explorer is turned on.

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

An index is the data store used by Amazon Web Services Resource Explorer to hold information about your Amazon Web Services\n resources that the service discovers.

" + } + }, + "com.amazonaws.resourceexplorer2#MemberIndexList": { + "type": "list", + "member": { + "target": "com.amazonaws.resourceexplorer2#MemberIndex" + } + }, + "com.amazonaws.resourceexplorer2#OrgConfiguration": { + "type": "structure", + "members": { + "AWSServiceAccessStatus": { + "target": "com.amazonaws.resourceexplorer2#AWSServiceAccessStatus", + "traits": { + "smithy.api#documentation": "

This value displays whether your Amazon Web Services service access is ENABLED or DISABLED.

", + "smithy.api#required": {} + } + }, + "ServiceLinkedRole": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

This value shows whether or not you have a valid a service-linked role required to start the multi-account search feature.

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

This is a structure that contains the status of Amazon Web Services service access, and whether you have a valid service-linked role to enable \n multi-account search for your organization.

" + } + }, "com.amazonaws.resourceexplorer2#QueryString": { "type": "string", "traits": { @@ -1310,12 +1553,18 @@ { "target": "com.amazonaws.resourceexplorer2#DisassociateDefaultView" }, + { + "target": "com.amazonaws.resourceexplorer2#GetAccountLevelServiceConfiguration" + }, { "target": "com.amazonaws.resourceexplorer2#GetDefaultView" }, { "target": "com.amazonaws.resourceexplorer2#GetIndex" }, + { + "target": "com.amazonaws.resourceexplorer2#ListIndexesForMembers" + }, { "target": "com.amazonaws.resourceexplorer2#ListSupportedResourceTypes" }, @@ -1888,7 +2137,7 @@ "NextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The parameter for receiving additional results if you receive a \n NextToken response in a previous request. A NextToken response \n indicates that more output is available. Set this parameter to the value of the previous \n call's NextToken response to indicate where the output should continue \n from.

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

The parameter for receiving additional results if you receive a \n NextToken response in a previous request. A NextToken response \n indicates that more output is available. Set this parameter to the value of the previous \n call's NextToken response to indicate where the output should continue \n from. The pagination tokens expire after 24 hours.

", "smithy.api#length": { "min": 1, "max": 2048 @@ -1909,7 +2158,7 @@ "NextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

If present, indicates that more output is available than is \n included in the current response. Use this value in the NextToken request parameter \n in a subsequent call to the operation to get the next part of the output. You should repeat this \n until the NextToken response element comes back as null.

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

If present, indicates that more output is available than is \n included in the current response. Use this value in the NextToken request parameter \n in a subsequent call to the operation to get the next part of the output. You should repeat this \n until the NextToken response element comes back as null.\n The pagination tokens expire after 24 hours.

", "smithy.api#length": { "min": 1, "max": 2048 @@ -1968,6 +2217,9 @@ "type": "list", "member": { "target": "smithy.api#String" + }, + "traits": { + "smithy.api#sensitive": {} } }, "com.amazonaws.resourceexplorer2#SupportedResourceType": { @@ -1997,6 +2249,9 @@ }, "value": { "target": "smithy.api#String" + }, + "traits": { + "smithy.api#sensitive": {} } }, "com.amazonaws.resourceexplorer2#TagResource": { @@ -2067,7 +2322,7 @@ } }, "traits": { - "smithy.api#documentation": "

The request failed because you exceeded a rate limit for this operation. For more\n information, see Quotas\n for Resource Explorer.

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

The request failed because you exceeded a rate limit for this operation. For more\n information, see Quotas for\n Resource Explorer.

", "smithy.api#error": "client", "smithy.api#httpError": 429 }