diff --git a/clients/client-backupsearch/.gitignore b/clients/client-backupsearch/.gitignore
new file mode 100644
index 000000000000..54f14c9aef25
--- /dev/null
+++ b/clients/client-backupsearch/.gitignore
@@ -0,0 +1,9 @@
+/node_modules/
+/build/
+/coverage/
+/docs/
+/dist-*
+*.tsbuildinfo
+*.tgz
+*.log
+package-lock.json
diff --git a/clients/client-backupsearch/LICENSE b/clients/client-backupsearch/LICENSE
new file mode 100644
index 000000000000..1349aa7c9923
--- /dev/null
+++ b/clients/client-backupsearch/LICENSE
@@ -0,0 +1,201 @@
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "{}"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright 2018-2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
diff --git a/clients/client-backupsearch/README.md b/clients/client-backupsearch/README.md
new file mode 100644
index 000000000000..0ff3caffe746
--- /dev/null
+++ b/clients/client-backupsearch/README.md
@@ -0,0 +1,317 @@
+
+
+# @aws-sdk/client-backupsearch
+
+## Description
+
+AWS SDK for JavaScript BackupSearch Client for Node.js, Browser and React Native.
+
+
Backup Search is the recovery point and item level search for Backup.
+For additional information, see:
+Backup Search is the recovery point and item level search for Backup.
+ *For additional information, see:
+ *+ * Backup API Reference + *
+ *+ * Backup + * Developer Guide + *
+ *Backup Search is the recovery point and item level search for Backup.
+ *For additional information, see:
+ *+ * Backup API Reference + *
+ *+ * Backup + * Developer Guide + *
+ *This operation retrieves metadata of a search job, + * including its progress.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BackupSearchClient, GetSearchJobCommand } from "@aws-sdk/client-backupsearch"; // ES Modules import + * // const { BackupSearchClient, GetSearchJobCommand } = require("@aws-sdk/client-backupsearch"); // CommonJS import + * const client = new BackupSearchClient(config); + * const input = { // GetSearchJobInput + * SearchJobIdentifier: "STRING_VALUE", // required + * }; + * const command = new GetSearchJobCommand(input); + * const response = await client.send(command); + * // { // GetSearchJobOutput + * // Name: "STRING_VALUE", + * // SearchScopeSummary: { // SearchScopeSummary + * // TotalRecoveryPointsToScanCount: Number("int"), + * // TotalItemsToScanCount: Number("long"), + * // }, + * // CurrentSearchProgress: { // CurrentSearchProgress + * // RecoveryPointsScannedCount: Number("int"), + * // ItemsScannedCount: Number("long"), + * // ItemsMatchedCount: Number("long"), + * // }, + * // StatusMessage: "STRING_VALUE", + * // EncryptionKeyArn: "STRING_VALUE", + * // CompletionTime: new Date("TIMESTAMP"), + * // Status: "RUNNING" || "COMPLETED" || "STOPPING" || "STOPPED" || "FAILED", // required + * // SearchScope: { // SearchScope + * // BackupResourceTypes: [ // ResourceTypeList // required + * // "S3" || "EBS", + * // ], + * // BackupResourceCreationTime: { // BackupCreationTimeFilter + * // CreatedAfter: new Date("TIMESTAMP"), + * // CreatedBefore: new Date("TIMESTAMP"), + * // }, + * // SourceResourceArns: [ // ResourceArnList + * // "STRING_VALUE", + * // ], + * // BackupResourceArns: [ // RecoveryPointArnList + * // "STRING_VALUE", + * // ], + * // BackupResourceTags: { // TagMap + * // "The resource was not found for this request.
+ *Confirm the resource information, such as the ARN or type is correct + * and exists, then retry the request.
+ * + * @throws {@link AccessDeniedException} (client fault) + *You do not have sufficient access to perform this action.
+ * + * @throws {@link InternalServerException} (server fault) + *An internal server error occurred. Retry your request.
+ * + * @throws {@link ThrottlingException} (client fault) + *The request was denied due to request throttling.
+ * + * @throws {@link ValidationException} (client fault) + *The input fails to satisfy the constraints specified by a service.
+ * + * @throws {@link BackupSearchServiceException} + *Base exception class for all service exceptions from BackupSearch service.
+ * + * @public + */ +export class GetSearchJobCommand extends $Command + .classBuilder< + GetSearchJobCommandInput, + GetSearchJobCommandOutput, + BackupSearchClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: BackupSearchClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("CryoBackupSearchService", "GetSearchJob", {}) + .n("BackupSearchClient", "GetSearchJobCommand") + .f(void 0, void 0) + .ser(se_GetSearchJobCommand) + .de(de_GetSearchJobCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: GetSearchJobInput; + output: GetSearchJobOutput; + }; + sdk: { + input: GetSearchJobCommandInput; + output: GetSearchJobCommandOutput; + }; + }; +} diff --git a/clients/client-backupsearch/src/commands/GetSearchResultExportJobCommand.ts b/clients/client-backupsearch/src/commands/GetSearchResultExportJobCommand.ts new file mode 100644 index 000000000000..7c44830c84ae --- /dev/null +++ b/clients/client-backupsearch/src/commands/GetSearchResultExportJobCommand.ts @@ -0,0 +1,126 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BackupSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BackupSearchClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { GetSearchResultExportJobInput, GetSearchResultExportJobOutput } from "../models/models_0"; +import { de_GetSearchResultExportJobCommand, se_GetSearchResultExportJobCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link GetSearchResultExportJobCommand}. + */ +export interface GetSearchResultExportJobCommandInput extends GetSearchResultExportJobInput {} +/** + * @public + * + * The output of {@link GetSearchResultExportJobCommand}. + */ +export interface GetSearchResultExportJobCommandOutput extends GetSearchResultExportJobOutput, __MetadataBearer {} + +/** + *This operation retrieves the metadata of an export job.
+ *An export job is an operation that transmits the results + * of a search job to a specified S3 bucket in a + * .csv file.
+ *An export job allows you to retain results of a search + * beyond the search job's scheduled retention of 7 days.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BackupSearchClient, GetSearchResultExportJobCommand } from "@aws-sdk/client-backupsearch"; // ES Modules import + * // const { BackupSearchClient, GetSearchResultExportJobCommand } = require("@aws-sdk/client-backupsearch"); // CommonJS import + * const client = new BackupSearchClient(config); + * const input = { // GetSearchResultExportJobInput + * ExportJobIdentifier: "STRING_VALUE", // required + * }; + * const command = new GetSearchResultExportJobCommand(input); + * const response = await client.send(command); + * // { // GetSearchResultExportJobOutput + * // ExportJobIdentifier: "STRING_VALUE", // required + * // ExportJobArn: "STRING_VALUE", + * // Status: "RUNNING" || "FAILED" || "COMPLETED", + * // CreationTime: new Date("TIMESTAMP"), + * // CompletionTime: new Date("TIMESTAMP"), + * // StatusMessage: "STRING_VALUE", + * // ExportSpecification: { // ExportSpecification Union: only one key present + * // s3ExportSpecification: { // S3ExportSpecification + * // DestinationBucket: "STRING_VALUE", // required + * // DestinationPrefix: "STRING_VALUE", + * // }, + * // }, + * // SearchJobArn: "STRING_VALUE", + * // }; + * + * ``` + * + * @param GetSearchResultExportJobCommandInput - {@link GetSearchResultExportJobCommandInput} + * @returns {@link GetSearchResultExportJobCommandOutput} + * @see {@link GetSearchResultExportJobCommandInput} for command's `input` shape. + * @see {@link GetSearchResultExportJobCommandOutput} for command's `response` shape. + * @see {@link BackupSearchClientResolvedConfig | config} for BackupSearchClient's `config` shape. + * + * @throws {@link ResourceNotFoundException} (client fault) + *The resource was not found for this request.
+ *Confirm the resource information, such as the ARN or type is correct + * and exists, then retry the request.
+ * + * @throws {@link AccessDeniedException} (client fault) + *You do not have sufficient access to perform this action.
+ * + * @throws {@link InternalServerException} (server fault) + *An internal server error occurred. Retry your request.
+ * + * @throws {@link ThrottlingException} (client fault) + *The request was denied due to request throttling.
+ * + * @throws {@link ValidationException} (client fault) + *The input fails to satisfy the constraints specified by a service.
+ * + * @throws {@link BackupSearchServiceException} + *Base exception class for all service exceptions from BackupSearch service.
+ * + * @public + */ +export class GetSearchResultExportJobCommand extends $Command + .classBuilder< + GetSearchResultExportJobCommandInput, + GetSearchResultExportJobCommandOutput, + BackupSearchClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: BackupSearchClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("CryoBackupSearchService", "GetSearchResultExportJob", {}) + .n("BackupSearchClient", "GetSearchResultExportJobCommand") + .f(void 0, void 0) + .ser(se_GetSearchResultExportJobCommand) + .de(de_GetSearchResultExportJobCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: GetSearchResultExportJobInput; + output: GetSearchResultExportJobOutput; + }; + sdk: { + input: GetSearchResultExportJobCommandInput; + output: GetSearchResultExportJobCommandOutput; + }; + }; +} diff --git a/clients/client-backupsearch/src/commands/ListSearchJobBackupsCommand.ts b/clients/client-backupsearch/src/commands/ListSearchJobBackupsCommand.ts new file mode 100644 index 000000000000..5710d2a03c09 --- /dev/null +++ b/clients/client-backupsearch/src/commands/ListSearchJobBackupsCommand.ts @@ -0,0 +1,134 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BackupSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BackupSearchClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { ListSearchJobBackupsInput, ListSearchJobBackupsOutput } from "../models/models_0"; +import { de_ListSearchJobBackupsCommand, se_ListSearchJobBackupsCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link ListSearchJobBackupsCommand}. + */ +export interface ListSearchJobBackupsCommandInput extends ListSearchJobBackupsInput {} +/** + * @public + * + * The output of {@link ListSearchJobBackupsCommand}. + */ +export interface ListSearchJobBackupsCommandOutput extends ListSearchJobBackupsOutput, __MetadataBearer {} + +/** + *This operation returns a list of all backups (recovery + * points) in a paginated format that were included in + * the search job.
+ *If a search does not display an expected backup in
+ * the results, you can call this operation to display each
+ * backup included in the search. Any backups that were not
+ * included because they have a FAILED
status
+ * from a permissions issue will be displayed, along with a
+ * status message.
Only recovery points with a backup index that has
+ * a status of ACTIVE
will be included in search results.
+ * If the index has any other status, its status will be
+ * displayed along with a status message.
The resource was not found for this request.
+ *Confirm the resource information, such as the ARN or type is correct + * and exists, then retry the request.
+ * + * @throws {@link AccessDeniedException} (client fault) + *You do not have sufficient access to perform this action.
+ * + * @throws {@link InternalServerException} (server fault) + *An internal server error occurred. Retry your request.
+ * + * @throws {@link ThrottlingException} (client fault) + *The request was denied due to request throttling.
+ * + * @throws {@link ValidationException} (client fault) + *The input fails to satisfy the constraints specified by a service.
+ * + * @throws {@link BackupSearchServiceException} + *Base exception class for all service exceptions from BackupSearch service.
+ * + * @public + */ +export class ListSearchJobBackupsCommand extends $Command + .classBuilder< + ListSearchJobBackupsCommandInput, + ListSearchJobBackupsCommandOutput, + BackupSearchClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: BackupSearchClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("CryoBackupSearchService", "ListSearchJobBackups", {}) + .n("BackupSearchClient", "ListSearchJobBackupsCommand") + .f(void 0, void 0) + .ser(se_ListSearchJobBackupsCommand) + .de(de_ListSearchJobBackupsCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: ListSearchJobBackupsInput; + output: ListSearchJobBackupsOutput; + }; + sdk: { + input: ListSearchJobBackupsCommandInput; + output: ListSearchJobBackupsCommandOutput; + }; + }; +} diff --git a/clients/client-backupsearch/src/commands/ListSearchJobResultsCommand.ts b/clients/client-backupsearch/src/commands/ListSearchJobResultsCommand.ts new file mode 100644 index 000000000000..deb4d83e81b1 --- /dev/null +++ b/clients/client-backupsearch/src/commands/ListSearchJobResultsCommand.ts @@ -0,0 +1,139 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BackupSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BackupSearchClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { + ListSearchJobResultsInput, + ListSearchJobResultsOutput, + ListSearchJobResultsOutputFilterSensitiveLog, +} from "../models/models_0"; +import { de_ListSearchJobResultsCommand, se_ListSearchJobResultsCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link ListSearchJobResultsCommand}. + */ +export interface ListSearchJobResultsCommandInput extends ListSearchJobResultsInput {} +/** + * @public + * + * The output of {@link ListSearchJobResultsCommand}. + */ +export interface ListSearchJobResultsCommandOutput extends ListSearchJobResultsOutput, __MetadataBearer {} + +/** + *This operation returns a list of a specified search job.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BackupSearchClient, ListSearchJobResultsCommand } from "@aws-sdk/client-backupsearch"; // ES Modules import + * // const { BackupSearchClient, ListSearchJobResultsCommand } = require("@aws-sdk/client-backupsearch"); // CommonJS import + * const client = new BackupSearchClient(config); + * const input = { // ListSearchJobResultsInput + * SearchJobIdentifier: "STRING_VALUE", // required + * NextToken: "STRING_VALUE", + * MaxResults: Number("int"), + * }; + * const command = new ListSearchJobResultsCommand(input); + * const response = await client.send(command); + * // { // ListSearchJobResultsOutput + * // Results: [ // Results // required + * // { // ResultItem Union: only one key present + * // S3ResultItem: { // S3ResultItem + * // BackupResourceArn: "STRING_VALUE", + * // SourceResourceArn: "STRING_VALUE", + * // BackupVaultName: "STRING_VALUE", + * // ObjectKey: "STRING_VALUE", + * // ObjectSize: Number("long"), + * // CreationTime: new Date("TIMESTAMP"), + * // ETag: "STRING_VALUE", + * // VersionId: "STRING_VALUE", + * // }, + * // EBSResultItem: { // EBSResultItem + * // BackupResourceArn: "STRING_VALUE", + * // SourceResourceArn: "STRING_VALUE", + * // BackupVaultName: "STRING_VALUE", + * // FileSystemIdentifier: "STRING_VALUE", + * // FilePath: "STRING_VALUE", + * // FileSize: Number("long"), + * // CreationTime: new Date("TIMESTAMP"), + * // LastModifiedTime: new Date("TIMESTAMP"), + * // }, + * // }, + * // ], + * // NextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListSearchJobResultsCommandInput - {@link ListSearchJobResultsCommandInput} + * @returns {@link ListSearchJobResultsCommandOutput} + * @see {@link ListSearchJobResultsCommandInput} for command's `input` shape. + * @see {@link ListSearchJobResultsCommandOutput} for command's `response` shape. + * @see {@link BackupSearchClientResolvedConfig | config} for BackupSearchClient's `config` shape. + * + * @throws {@link ResourceNotFoundException} (client fault) + *The resource was not found for this request.
+ *Confirm the resource information, such as the ARN or type is correct + * and exists, then retry the request.
+ * + * @throws {@link AccessDeniedException} (client fault) + *You do not have sufficient access to perform this action.
+ * + * @throws {@link InternalServerException} (server fault) + *An internal server error occurred. Retry your request.
+ * + * @throws {@link ThrottlingException} (client fault) + *The request was denied due to request throttling.
+ * + * @throws {@link ValidationException} (client fault) + *The input fails to satisfy the constraints specified by a service.
+ * + * @throws {@link BackupSearchServiceException} + *Base exception class for all service exceptions from BackupSearch service.
+ * + * @public + */ +export class ListSearchJobResultsCommand extends $Command + .classBuilder< + ListSearchJobResultsCommandInput, + ListSearchJobResultsCommandOutput, + BackupSearchClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: BackupSearchClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("CryoBackupSearchService", "ListSearchJobResults", {}) + .n("BackupSearchClient", "ListSearchJobResultsCommand") + .f(void 0, ListSearchJobResultsOutputFilterSensitiveLog) + .ser(se_ListSearchJobResultsCommand) + .de(de_ListSearchJobResultsCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: ListSearchJobResultsInput; + output: ListSearchJobResultsOutput; + }; + sdk: { + input: ListSearchJobResultsCommandInput; + output: ListSearchJobResultsCommandOutput; + }; + }; +} diff --git a/clients/client-backupsearch/src/commands/ListSearchJobsCommand.ts b/clients/client-backupsearch/src/commands/ListSearchJobsCommand.ts new file mode 100644 index 000000000000..9c672996afde --- /dev/null +++ b/clients/client-backupsearch/src/commands/ListSearchJobsCommand.ts @@ -0,0 +1,122 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BackupSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BackupSearchClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { ListSearchJobsInput, ListSearchJobsOutput } from "../models/models_0"; +import { de_ListSearchJobsCommand, se_ListSearchJobsCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link ListSearchJobsCommand}. + */ +export interface ListSearchJobsCommandInput extends ListSearchJobsInput {} +/** + * @public + * + * The output of {@link ListSearchJobsCommand}. + */ +export interface ListSearchJobsCommandOutput extends ListSearchJobsOutput, __MetadataBearer {} + +/** + *This operation returns a list of search jobs belonging + * to an account.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BackupSearchClient, ListSearchJobsCommand } from "@aws-sdk/client-backupsearch"; // ES Modules import + * // const { BackupSearchClient, ListSearchJobsCommand } = require("@aws-sdk/client-backupsearch"); // CommonJS import + * const client = new BackupSearchClient(config); + * const input = { // ListSearchJobsInput + * ByStatus: "RUNNING" || "COMPLETED" || "STOPPING" || "STOPPED" || "FAILED", + * NextToken: "STRING_VALUE", + * MaxResults: Number("int"), + * }; + * const command = new ListSearchJobsCommand(input); + * const response = await client.send(command); + * // { // ListSearchJobsOutput + * // SearchJobs: [ // SearchJobs // required + * // { // SearchJobSummary + * // SearchJobIdentifier: "STRING_VALUE", + * // SearchJobArn: "STRING_VALUE", + * // Name: "STRING_VALUE", + * // Status: "RUNNING" || "COMPLETED" || "STOPPING" || "STOPPED" || "FAILED", + * // CreationTime: new Date("TIMESTAMP"), + * // CompletionTime: new Date("TIMESTAMP"), + * // SearchScopeSummary: { // SearchScopeSummary + * // TotalRecoveryPointsToScanCount: Number("int"), + * // TotalItemsToScanCount: Number("long"), + * // }, + * // StatusMessage: "STRING_VALUE", + * // }, + * // ], + * // NextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListSearchJobsCommandInput - {@link ListSearchJobsCommandInput} + * @returns {@link ListSearchJobsCommandOutput} + * @see {@link ListSearchJobsCommandInput} for command's `input` shape. + * @see {@link ListSearchJobsCommandOutput} for command's `response` shape. + * @see {@link BackupSearchClientResolvedConfig | config} for BackupSearchClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *You do not have sufficient access to perform this action.
+ * + * @throws {@link InternalServerException} (server fault) + *An internal server error occurred. Retry your request.
+ * + * @throws {@link ThrottlingException} (client fault) + *The request was denied due to request throttling.
+ * + * @throws {@link ValidationException} (client fault) + *The input fails to satisfy the constraints specified by a service.
+ * + * @throws {@link BackupSearchServiceException} + *Base exception class for all service exceptions from BackupSearch service.
+ * + * @public + */ +export class ListSearchJobsCommand extends $Command + .classBuilder< + ListSearchJobsCommandInput, + ListSearchJobsCommandOutput, + BackupSearchClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: BackupSearchClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("CryoBackupSearchService", "ListSearchJobs", {}) + .n("BackupSearchClient", "ListSearchJobsCommand") + .f(void 0, void 0) + .ser(se_ListSearchJobsCommand) + .de(de_ListSearchJobsCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: ListSearchJobsInput; + output: ListSearchJobsOutput; + }; + sdk: { + input: ListSearchJobsCommandInput; + output: ListSearchJobsCommandOutput; + }; + }; +} diff --git a/clients/client-backupsearch/src/commands/ListSearchResultExportJobsCommand.ts b/clients/client-backupsearch/src/commands/ListSearchResultExportJobsCommand.ts new file mode 100644 index 000000000000..30df4619642c --- /dev/null +++ b/clients/client-backupsearch/src/commands/ListSearchResultExportJobsCommand.ts @@ -0,0 +1,127 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BackupSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BackupSearchClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { ListSearchResultExportJobsInput, ListSearchResultExportJobsOutput } from "../models/models_0"; +import { de_ListSearchResultExportJobsCommand, se_ListSearchResultExportJobsCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link ListSearchResultExportJobsCommand}. + */ +export interface ListSearchResultExportJobsCommandInput extends ListSearchResultExportJobsInput {} +/** + * @public + * + * The output of {@link ListSearchResultExportJobsCommand}. + */ +export interface ListSearchResultExportJobsCommandOutput extends ListSearchResultExportJobsOutput, __MetadataBearer {} + +/** + *This operation exports search results of a search job + * to a specified destination S3 bucket.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BackupSearchClient, ListSearchResultExportJobsCommand } from "@aws-sdk/client-backupsearch"; // ES Modules import + * // const { BackupSearchClient, ListSearchResultExportJobsCommand } = require("@aws-sdk/client-backupsearch"); // CommonJS import + * const client = new BackupSearchClient(config); + * const input = { // ListSearchResultExportJobsInput + * Status: "RUNNING" || "FAILED" || "COMPLETED", + * SearchJobIdentifier: "STRING_VALUE", + * NextToken: "STRING_VALUE", + * MaxResults: Number("int"), + * }; + * const command = new ListSearchResultExportJobsCommand(input); + * const response = await client.send(command); + * // { // ListSearchResultExportJobsOutput + * // ExportJobs: [ // ExportJobSummaries // required + * // { // ExportJobSummary + * // ExportJobIdentifier: "STRING_VALUE", // required + * // ExportJobArn: "STRING_VALUE", + * // Status: "RUNNING" || "FAILED" || "COMPLETED", + * // CreationTime: new Date("TIMESTAMP"), + * // CompletionTime: new Date("TIMESTAMP"), + * // StatusMessage: "STRING_VALUE", + * // SearchJobArn: "STRING_VALUE", + * // }, + * // ], + * // NextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListSearchResultExportJobsCommandInput - {@link ListSearchResultExportJobsCommandInput} + * @returns {@link ListSearchResultExportJobsCommandOutput} + * @see {@link ListSearchResultExportJobsCommandInput} for command's `input` shape. + * @see {@link ListSearchResultExportJobsCommandOutput} for command's `response` shape. + * @see {@link BackupSearchClientResolvedConfig | config} for BackupSearchClient's `config` shape. + * + * @throws {@link ResourceNotFoundException} (client fault) + *The resource was not found for this request.
+ *Confirm the resource information, such as the ARN or type is correct + * and exists, then retry the request.
+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *The request denied due to exceeding the quota limits permitted.
+ * + * @throws {@link AccessDeniedException} (client fault) + *You do not have sufficient access to perform this action.
+ * + * @throws {@link InternalServerException} (server fault) + *An internal server error occurred. Retry your request.
+ * + * @throws {@link ThrottlingException} (client fault) + *The request was denied due to request throttling.
+ * + * @throws {@link ValidationException} (client fault) + *The input fails to satisfy the constraints specified by a service.
+ * + * @throws {@link BackupSearchServiceException} + *Base exception class for all service exceptions from BackupSearch service.
+ * + * @public + */ +export class ListSearchResultExportJobsCommand extends $Command + .classBuilder< + ListSearchResultExportJobsCommandInput, + ListSearchResultExportJobsCommandOutput, + BackupSearchClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: BackupSearchClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("CryoBackupSearchService", "ListSearchResultExportJobs", {}) + .n("BackupSearchClient", "ListSearchResultExportJobsCommand") + .f(void 0, void 0) + .ser(se_ListSearchResultExportJobsCommand) + .de(de_ListSearchResultExportJobsCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: ListSearchResultExportJobsInput; + output: ListSearchResultExportJobsOutput; + }; + sdk: { + input: ListSearchResultExportJobsCommandInput; + output: ListSearchResultExportJobsCommandOutput; + }; + }; +} diff --git a/clients/client-backupsearch/src/commands/ListTagsForResourceCommand.ts b/clients/client-backupsearch/src/commands/ListTagsForResourceCommand.ts new file mode 100644 index 000000000000..b98ef69f73b8 --- /dev/null +++ b/clients/client-backupsearch/src/commands/ListTagsForResourceCommand.ts @@ -0,0 +1,111 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BackupSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BackupSearchClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { ListTagsForResourceRequest, ListTagsForResourceResponse } from "../models/models_0"; +import { de_ListTagsForResourceCommand, se_ListTagsForResourceCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link ListTagsForResourceCommand}. + */ +export interface ListTagsForResourceCommandInput extends ListTagsForResourceRequest {} +/** + * @public + * + * The output of {@link ListTagsForResourceCommand}. + */ +export interface ListTagsForResourceCommandOutput extends ListTagsForResourceResponse, __MetadataBearer {} + +/** + *This operation returns the tags for a resource type.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BackupSearchClient, ListTagsForResourceCommand } from "@aws-sdk/client-backupsearch"; // ES Modules import + * // const { BackupSearchClient, ListTagsForResourceCommand } = require("@aws-sdk/client-backupsearch"); // CommonJS import + * const client = new BackupSearchClient(config); + * const input = { // ListTagsForResourceRequest + * ResourceArn: "STRING_VALUE", // required + * }; + * const command = new ListTagsForResourceCommand(input); + * const response = await client.send(command); + * // { // ListTagsForResourceResponse + * // Tags: { // TagMap + * // "The resource was not found for this request.
+ *Confirm the resource information, such as the ARN or type is correct + * and exists, then retry the request.
+ * + * @throws {@link AccessDeniedException} (client fault) + *You do not have sufficient access to perform this action.
+ * + * @throws {@link InternalServerException} (server fault) + *An internal server error occurred. Retry your request.
+ * + * @throws {@link ThrottlingException} (client fault) + *The request was denied due to request throttling.
+ * + * @throws {@link ValidationException} (client fault) + *The input fails to satisfy the constraints specified by a service.
+ * + * @throws {@link BackupSearchServiceException} + *Base exception class for all service exceptions from BackupSearch service.
+ * + * @public + */ +export class ListTagsForResourceCommand extends $Command + .classBuilder< + ListTagsForResourceCommandInput, + ListTagsForResourceCommandOutput, + BackupSearchClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: BackupSearchClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("CryoBackupSearchService", "ListTagsForResource", {}) + .n("BackupSearchClient", "ListTagsForResourceCommand") + .f(void 0, void 0) + .ser(se_ListTagsForResourceCommand) + .de(de_ListTagsForResourceCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: ListTagsForResourceRequest; + output: ListTagsForResourceResponse; + }; + sdk: { + input: ListTagsForResourceCommandInput; + output: ListTagsForResourceCommandOutput; + }; + }; +} diff --git a/clients/client-backupsearch/src/commands/StartSearchJobCommand.ts b/clients/client-backupsearch/src/commands/StartSearchJobCommand.ts new file mode 100644 index 000000000000..128ffbca7229 --- /dev/null +++ b/clients/client-backupsearch/src/commands/StartSearchJobCommand.ts @@ -0,0 +1,208 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BackupSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BackupSearchClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { StartSearchJobInput, StartSearchJobOutput } from "../models/models_0"; +import { de_StartSearchJobCommand, se_StartSearchJobCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link StartSearchJobCommand}. + */ +export interface StartSearchJobCommandInput extends StartSearchJobInput {} +/** + * @public + * + * The output of {@link StartSearchJobCommand}. + */ +export interface StartSearchJobCommandOutput extends StartSearchJobOutput, __MetadataBearer {} + +/** + *This operation creates a search job which returns + * recovery points filtered by SearchScope and items + * filtered by ItemFilters.
+ *You can optionally include ClientToken, + * EncryptionKeyArn, Name, and/or Tags.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BackupSearchClient, StartSearchJobCommand } from "@aws-sdk/client-backupsearch"; // ES Modules import + * // const { BackupSearchClient, StartSearchJobCommand } = require("@aws-sdk/client-backupsearch"); // CommonJS import + * const client = new BackupSearchClient(config); + * const input = { // StartSearchJobInput + * Tags: { // TagMap + * "This exception occurs when a conflict with a previous successful + * operation is detected. This generally occurs when the previous + * operation did not have time to propagate to the host serving the + * current request.
+ *A retry (with appropriate backoff logic) is the recommended + * response to this exception.
+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *The request denied due to exceeding the quota limits permitted.
+ * + * @throws {@link AccessDeniedException} (client fault) + *You do not have sufficient access to perform this action.
+ * + * @throws {@link InternalServerException} (server fault) + *An internal server error occurred. Retry your request.
+ * + * @throws {@link ThrottlingException} (client fault) + *The request was denied due to request throttling.
+ * + * @throws {@link ValidationException} (client fault) + *The input fails to satisfy the constraints specified by a service.
+ * + * @throws {@link BackupSearchServiceException} + *Base exception class for all service exceptions from BackupSearch service.
+ * + * @public + */ +export class StartSearchJobCommand extends $Command + .classBuilder< + StartSearchJobCommandInput, + StartSearchJobCommandOutput, + BackupSearchClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: BackupSearchClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("CryoBackupSearchService", "StartSearchJob", {}) + .n("BackupSearchClient", "StartSearchJobCommand") + .f(void 0, void 0) + .ser(se_StartSearchJobCommand) + .de(de_StartSearchJobCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: StartSearchJobInput; + output: StartSearchJobOutput; + }; + sdk: { + input: StartSearchJobCommandInput; + output: StartSearchJobCommandOutput; + }; + }; +} diff --git a/clients/client-backupsearch/src/commands/StartSearchResultExportJobCommand.ts b/clients/client-backupsearch/src/commands/StartSearchResultExportJobCommand.ts new file mode 100644 index 000000000000..43e0a665e9d9 --- /dev/null +++ b/clients/client-backupsearch/src/commands/StartSearchResultExportJobCommand.ts @@ -0,0 +1,133 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BackupSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BackupSearchClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { StartSearchResultExportJobInput, StartSearchResultExportJobOutput } from "../models/models_0"; +import { de_StartSearchResultExportJobCommand, se_StartSearchResultExportJobCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link StartSearchResultExportJobCommand}. + */ +export interface StartSearchResultExportJobCommandInput extends StartSearchResultExportJobInput {} +/** + * @public + * + * The output of {@link StartSearchResultExportJobCommand}. + */ +export interface StartSearchResultExportJobCommandOutput extends StartSearchResultExportJobOutput, __MetadataBearer {} + +/** + *This operations starts a job to export the results + * of search job to a designated S3 bucket.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BackupSearchClient, StartSearchResultExportJobCommand } from "@aws-sdk/client-backupsearch"; // ES Modules import + * // const { BackupSearchClient, StartSearchResultExportJobCommand } = require("@aws-sdk/client-backupsearch"); // CommonJS import + * const client = new BackupSearchClient(config); + * const input = { // StartSearchResultExportJobInput + * SearchJobIdentifier: "STRING_VALUE", // required + * ExportSpecification: { // ExportSpecification Union: only one key present + * s3ExportSpecification: { // S3ExportSpecification + * DestinationBucket: "STRING_VALUE", // required + * DestinationPrefix: "STRING_VALUE", + * }, + * }, + * ClientToken: "STRING_VALUE", + * Tags: { // TagMap + * "This exception occurs when a conflict with a previous successful + * operation is detected. This generally occurs when the previous + * operation did not have time to propagate to the host serving the + * current request.
+ *A retry (with appropriate backoff logic) is the recommended + * response to this exception.
+ * + * @throws {@link ResourceNotFoundException} (client fault) + *The resource was not found for this request.
+ *Confirm the resource information, such as the ARN or type is correct + * and exists, then retry the request.
+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *The request denied due to exceeding the quota limits permitted.
+ * + * @throws {@link AccessDeniedException} (client fault) + *You do not have sufficient access to perform this action.
+ * + * @throws {@link InternalServerException} (server fault) + *An internal server error occurred. Retry your request.
+ * + * @throws {@link ThrottlingException} (client fault) + *The request was denied due to request throttling.
+ * + * @throws {@link ValidationException} (client fault) + *The input fails to satisfy the constraints specified by a service.
+ * + * @throws {@link BackupSearchServiceException} + *Base exception class for all service exceptions from BackupSearch service.
+ * + * @public + */ +export class StartSearchResultExportJobCommand extends $Command + .classBuilder< + StartSearchResultExportJobCommandInput, + StartSearchResultExportJobCommandOutput, + BackupSearchClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: BackupSearchClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("CryoBackupSearchService", "StartSearchResultExportJob", {}) + .n("BackupSearchClient", "StartSearchResultExportJobCommand") + .f(void 0, void 0) + .ser(se_StartSearchResultExportJobCommand) + .de(de_StartSearchResultExportJobCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: StartSearchResultExportJobInput; + output: StartSearchResultExportJobOutput; + }; + sdk: { + input: StartSearchResultExportJobCommandInput; + output: StartSearchResultExportJobCommandOutput; + }; + }; +} diff --git a/clients/client-backupsearch/src/commands/StopSearchJobCommand.ts b/clients/client-backupsearch/src/commands/StopSearchJobCommand.ts new file mode 100644 index 000000000000..118cf92418ec --- /dev/null +++ b/clients/client-backupsearch/src/commands/StopSearchJobCommand.ts @@ -0,0 +1,117 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BackupSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BackupSearchClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { StopSearchJobInput, StopSearchJobOutput } from "../models/models_0"; +import { de_StopSearchJobCommand, se_StopSearchJobCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link StopSearchJobCommand}. + */ +export interface StopSearchJobCommandInput extends StopSearchJobInput {} +/** + * @public + * + * The output of {@link StopSearchJobCommand}. + */ +export interface StopSearchJobCommandOutput extends StopSearchJobOutput, __MetadataBearer {} + +/** + *This operations ends a search job.
+ *Only a search job with a status of RUNNING
+ * can be stopped.
This exception occurs when a conflict with a previous successful + * operation is detected. This generally occurs when the previous + * operation did not have time to propagate to the host serving the + * current request.
+ *A retry (with appropriate backoff logic) is the recommended + * response to this exception.
+ * + * @throws {@link ResourceNotFoundException} (client fault) + *The resource was not found for this request.
+ *Confirm the resource information, such as the ARN or type is correct + * and exists, then retry the request.
+ * + * @throws {@link AccessDeniedException} (client fault) + *You do not have sufficient access to perform this action.
+ * + * @throws {@link InternalServerException} (server fault) + *An internal server error occurred. Retry your request.
+ * + * @throws {@link ThrottlingException} (client fault) + *The request was denied due to request throttling.
+ * + * @throws {@link ValidationException} (client fault) + *The input fails to satisfy the constraints specified by a service.
+ * + * @throws {@link BackupSearchServiceException} + *Base exception class for all service exceptions from BackupSearch service.
+ * + * @public + */ +export class StopSearchJobCommand extends $Command + .classBuilder< + StopSearchJobCommandInput, + StopSearchJobCommandOutput, + BackupSearchClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: BackupSearchClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("CryoBackupSearchService", "StopSearchJob", {}) + .n("BackupSearchClient", "StopSearchJobCommand") + .f(void 0, void 0) + .ser(se_StopSearchJobCommand) + .de(de_StopSearchJobCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: StopSearchJobInput; + output: {}; + }; + sdk: { + input: StopSearchJobCommandInput; + output: StopSearchJobCommandOutput; + }; + }; +} diff --git a/clients/client-backupsearch/src/commands/TagResourceCommand.ts b/clients/client-backupsearch/src/commands/TagResourceCommand.ts new file mode 100644 index 000000000000..bb52676c435b --- /dev/null +++ b/clients/client-backupsearch/src/commands/TagResourceCommand.ts @@ -0,0 +1,110 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BackupSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BackupSearchClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { TagResourceRequest, TagResourceResponse } from "../models/models_0"; +import { de_TagResourceCommand, se_TagResourceCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link TagResourceCommand}. + */ +export interface TagResourceCommandInput extends TagResourceRequest {} +/** + * @public + * + * The output of {@link TagResourceCommand}. + */ +export interface TagResourceCommandOutput extends TagResourceResponse, __MetadataBearer {} + +/** + *This operation puts tags on the resource you indicate.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BackupSearchClient, TagResourceCommand } from "@aws-sdk/client-backupsearch"; // ES Modules import + * // const { BackupSearchClient, TagResourceCommand } = require("@aws-sdk/client-backupsearch"); // CommonJS import + * const client = new BackupSearchClient(config); + * const input = { // TagResourceRequest + * ResourceArn: "STRING_VALUE", // required + * Tags: { // TagMap // required + * "The resource was not found for this request.
+ *Confirm the resource information, such as the ARN or type is correct + * and exists, then retry the request.
+ * + * @throws {@link AccessDeniedException} (client fault) + *You do not have sufficient access to perform this action.
+ * + * @throws {@link InternalServerException} (server fault) + *An internal server error occurred. Retry your request.
+ * + * @throws {@link ThrottlingException} (client fault) + *The request was denied due to request throttling.
+ * + * @throws {@link ValidationException} (client fault) + *The input fails to satisfy the constraints specified by a service.
+ * + * @throws {@link BackupSearchServiceException} + *Base exception class for all service exceptions from BackupSearch service.
+ * + * @public + */ +export class TagResourceCommand extends $Command + .classBuilder< + TagResourceCommandInput, + TagResourceCommandOutput, + BackupSearchClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: BackupSearchClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("CryoBackupSearchService", "TagResource", {}) + .n("BackupSearchClient", "TagResourceCommand") + .f(void 0, void 0) + .ser(se_TagResourceCommand) + .de(de_TagResourceCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: TagResourceRequest; + output: {}; + }; + sdk: { + input: TagResourceCommandInput; + output: TagResourceCommandOutput; + }; + }; +} diff --git a/clients/client-backupsearch/src/commands/UntagResourceCommand.ts b/clients/client-backupsearch/src/commands/UntagResourceCommand.ts new file mode 100644 index 000000000000..7e190d48638f --- /dev/null +++ b/clients/client-backupsearch/src/commands/UntagResourceCommand.ts @@ -0,0 +1,110 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { BackupSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../BackupSearchClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { UntagResourceRequest, UntagResourceResponse } from "../models/models_0"; +import { de_UntagResourceCommand, se_UntagResourceCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link UntagResourceCommand}. + */ +export interface UntagResourceCommandInput extends UntagResourceRequest {} +/** + * @public + * + * The output of {@link UntagResourceCommand}. + */ +export interface UntagResourceCommandOutput extends UntagResourceResponse, __MetadataBearer {} + +/** + *This operation removes tags from the specified resource.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { BackupSearchClient, UntagResourceCommand } from "@aws-sdk/client-backupsearch"; // ES Modules import + * // const { BackupSearchClient, UntagResourceCommand } = require("@aws-sdk/client-backupsearch"); // CommonJS import + * const client = new BackupSearchClient(config); + * const input = { // UntagResourceRequest + * ResourceArn: "STRING_VALUE", // required + * TagKeys: [ // TagKeys // required + * "STRING_VALUE", + * ], + * }; + * const command = new UntagResourceCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param UntagResourceCommandInput - {@link UntagResourceCommandInput} + * @returns {@link UntagResourceCommandOutput} + * @see {@link UntagResourceCommandInput} for command's `input` shape. + * @see {@link UntagResourceCommandOutput} for command's `response` shape. + * @see {@link BackupSearchClientResolvedConfig | config} for BackupSearchClient's `config` shape. + * + * @throws {@link ResourceNotFoundException} (client fault) + *The resource was not found for this request.
+ *Confirm the resource information, such as the ARN or type is correct + * and exists, then retry the request.
+ * + * @throws {@link AccessDeniedException} (client fault) + *You do not have sufficient access to perform this action.
+ * + * @throws {@link InternalServerException} (server fault) + *An internal server error occurred. Retry your request.
+ * + * @throws {@link ThrottlingException} (client fault) + *The request was denied due to request throttling.
+ * + * @throws {@link ValidationException} (client fault) + *The input fails to satisfy the constraints specified by a service.
+ * + * @throws {@link BackupSearchServiceException} + *Base exception class for all service exceptions from BackupSearch service.
+ * + * @public + */ +export class UntagResourceCommand extends $Command + .classBuilder< + UntagResourceCommandInput, + UntagResourceCommandOutput, + BackupSearchClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: BackupSearchClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("CryoBackupSearchService", "UntagResource", {}) + .n("BackupSearchClient", "UntagResourceCommand") + .f(void 0, void 0) + .ser(se_UntagResourceCommand) + .de(de_UntagResourceCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: UntagResourceRequest; + output: {}; + }; + sdk: { + input: UntagResourceCommandInput; + output: UntagResourceCommandOutput; + }; + }; +} diff --git a/clients/client-backupsearch/src/commands/index.ts b/clients/client-backupsearch/src/commands/index.ts new file mode 100644 index 000000000000..822ca911aec9 --- /dev/null +++ b/clients/client-backupsearch/src/commands/index.ts @@ -0,0 +1,13 @@ +// smithy-typescript generated code +export * from "./GetSearchJobCommand"; +export * from "./GetSearchResultExportJobCommand"; +export * from "./ListSearchJobBackupsCommand"; +export * from "./ListSearchJobResultsCommand"; +export * from "./ListSearchJobsCommand"; +export * from "./ListSearchResultExportJobsCommand"; +export * from "./ListTagsForResourceCommand"; +export * from "./StartSearchJobCommand"; +export * from "./StartSearchResultExportJobCommand"; +export * from "./StopSearchJobCommand"; +export * from "./TagResourceCommand"; +export * from "./UntagResourceCommand"; diff --git a/clients/client-backupsearch/src/endpoint/EndpointParameters.ts b/clients/client-backupsearch/src/endpoint/EndpointParameters.ts new file mode 100644 index 000000000000..50e5719a838a --- /dev/null +++ b/clients/client-backupsearch/src/endpoint/EndpointParameters.ts @@ -0,0 +1,37 @@ +// smithy-typescript generated code +import { Endpoint, EndpointParameters as __EndpointParameters, EndpointV2, Provider } from "@smithy/types"; + +/** + * @public + */ +export interface ClientInputEndpointParameters { + useFipsEndpoint?: boolean | ProviderBackup Search is the recovery point and item level search for Backup.
+ *For additional information, see:
+ *+ * Backup API Reference + *
+ *+ * Backup + * Developer Guide + *
+ *You do not have sufficient access to perform this action.
+ * @public + */ +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionTypeThis filters by recovery points within the CreatedAfter + * and CreatedBefore timestamps.
+ * @public + */ +export interface BackupCreationTimeFilter { + /** + *This timestamp includes recovery points only + * created after the specified time.
+ * @public + */ + CreatedAfter?: Date | undefined; + + /** + *This timestamp includes recovery points only + * created before the specified time.
+ * @public + */ + CreatedBefore?: Date | undefined; +} + +/** + *This exception occurs when a conflict with a previous successful + * operation is detected. This generally occurs when the previous + * operation did not have time to propagate to the host serving the + * current request.
+ *A retry (with appropriate backoff logic) is the recommended + * response to this exception.
+ * @public + */ +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + *Identifier of the resource affected.
+ * @public + */ + resourceId: string | undefined; + + /** + *Type of the resource affected.
+ * @public + */ + resourceType: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionTypeAn internal server error occurred. Retry your request.
+ * @public + */ +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + $retryable = {}; + /** + *Retry the call after number of seconds.
+ * @public + */ + retryAfterSeconds?: number | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionTypeThe unique string that specifies the search job.
+ * @public + */ + SearchJobIdentifier: string | undefined; + + /** + *The next item following a partial list of returned backups + * included in a search job.
+ *For example, if a request
+ * is made to return MaxResults
number of backups, NextToken
+ * allows you to return more items in your list starting at the location pointed to by the
+ * next token.
The maximum number of resource list items to be returned.
+ * @public + */ + MaxResults?: number | undefined; +} + +/** + * @public + * @enum + */ +export const ResourceType = { + EBS: "EBS", + S3: "S3", +} as const; + +/** + * @public + */ +export type ResourceType = (typeof ResourceType)[keyof typeof ResourceType]; + +/** + * @public + * @enum + */ +export const SearchJobState = { + COMPLETED: "COMPLETED", + FAILED: "FAILED", + RUNNING: "RUNNING", + STOPPED: "STOPPED", + STOPPING: "STOPPING", +} as const; + +/** + * @public + */ +export type SearchJobState = (typeof SearchJobState)[keyof typeof SearchJobState]; + +/** + *This contains the information about recovery + * points returned in results of a search job.
+ * @public + */ +export interface SearchJobBackupsResult { + /** + *This is the status of the search job backup result.
+ * @public + */ + Status?: SearchJobState | undefined; + + /** + *This is the status message included with the results.
+ * @public + */ + StatusMessage?: string | undefined; + + /** + *This is the resource type of the search.
+ * @public + */ + ResourceType?: ResourceType | undefined; + + /** + *The Amazon Resource Name (ARN) that uniquely identifies + * the backup resources.
+ * @public + */ + BackupResourceArn?: string | undefined; + + /** + *The Amazon Resource Name (ARN) that uniquely identifies + * the source resources.
+ * @public + */ + SourceResourceArn?: string | undefined; + + /** + *This is the creation time of the backup index.
+ * @public + */ + IndexCreationTime?: Date | undefined; + + /** + *This is the creation time of the backup (recovery point).
+ * @public + */ + BackupCreationTime?: Date | undefined; +} + +/** + * @public + */ +export interface ListSearchJobBackupsOutput { + /** + *The recovery points returned the results of a + * search job
+ * @public + */ + Results: SearchJobBackupsResult[] | undefined; + + /** + *The next item following a partial list of returned backups + * included in a search job.
+ *For example, if a request
+ * is made to return MaxResults
number of backups, NextToken
+ * allows you to return more items in your list starting at the location pointed to by the
+ * next token.
The resource was not found for this request.
+ *Confirm the resource information, such as the ARN or type is correct + * and exists, then retry the request.
+ * @public + */ +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + *Hypothetical identifier of the resource affected.
+ * @public + */ + resourceId: string | undefined; + + /** + *Hypothetical type of the resource affected.
+ * @public + */ + resourceType: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionTypeThe request was denied due to request throttling.
+ * @public + */ +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + $retryable = { + throttling: true, + }; + /** + *This is the code unique to the originating service.
+ * @public + */ + serviceCode?: string | undefined; + + /** + *This is the code unique to the originating service with the quota.
+ * @public + */ + quotaCode?: string | undefined; + + /** + *Retry the call after number of seconds.
+ * @public + */ + retryAfterSeconds?: number | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionTypeThe input fails to satisfy the constraints specified by a service.
+ * @public + */ +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionTypeThe unique string that specifies the search job.
+ * @public + */ + SearchJobIdentifier: string | undefined; + + /** + *The next item following a partial list of returned + * search job results.
+ *For example, if a request
+ * is made to return MaxResults
number of
+ * search job results, NextToken
+ * allows you to return more items in your list starting at the location pointed to by the
+ * next token.
The maximum number of resource list items to be returned.
+ * @public + */ + MaxResults?: number | undefined; +} + +/** + *These are the items returned in the results of + * a search of Amazon EBS backup metadata.
+ * @public + */ +export interface EBSResultItem { + /** + *These are one or more items in the + * results that match values for the Amazon Resource + * Name (ARN) of recovery points returned in a search + * of Amazon EBS backup metadata.
+ * @public + */ + BackupResourceArn?: string | undefined; + + /** + *These are one or more items in the + * results that match values for the Amazon Resource + * Name (ARN) of source resources returned in a search + * of Amazon EBS backup metadata.
+ * @public + */ + SourceResourceArn?: string | undefined; + + /** + *The name of the backup vault.
+ * @public + */ + BackupVaultName?: string | undefined; + + /** + *These are one or more items in the + * results that match values for file systems returned + * in a search of Amazon EBS backup metadata.
+ * @public + */ + FileSystemIdentifier?: string | undefined; + + /** + *These are one or more items in the + * results that match values for file paths returned + * in a search of Amazon EBS backup metadata.
+ * @public + */ + FilePath?: string | undefined; + + /** + *These are one or more items in the + * results that match values for file sizes returned + * in a search of Amazon EBS backup metadata.
+ * @public + */ + FileSize?: number | undefined; + + /** + *These are one or more items in the + * results that match values for creation times returned + * in a search of Amazon EBS backup metadata.
+ * @public + */ + CreationTime?: Date | undefined; + + /** + *These are one or more items in the + * results that match values for Last Modified Time returned + * in a search of Amazon EBS backup metadata.
+ * @public + */ + LastModifiedTime?: Date | undefined; +} + +/** + *These are the items returned in the results of + * a search of Amazon S3 backup metadata.
+ * @public + */ +export interface S3ResultItem { + /** + *These are items in the returned results that match + * recovery point Amazon Resource Names (ARN) input during + * a search of Amazon S3 backup metadata.
+ * @public + */ + BackupResourceArn?: string | undefined; + + /** + *These are items in the returned results that match + * source Amazon Resource Names (ARN) input during + * a search of Amazon S3 backup metadata.
+ * @public + */ + SourceResourceArn?: string | undefined; + + /** + *The name of the backup vault.
+ * @public + */ + BackupVaultName?: string | undefined; + + /** + *This is one or more items + * returned in the results of a search of Amazon S3 + * backup metadata that match the values input for + * object key.
+ * @public + */ + ObjectKey?: string | undefined; + + /** + *These are items in the returned results that match + * values for object size(s) input during a search of + * Amazon S3 backup metadata.
+ * @public + */ + ObjectSize?: number | undefined; + + /** + *These are one or more items in the returned results + * that match values for item creation time input during + * a search of Amazon S3 backup metadata.
+ * @public + */ + CreationTime?: Date | undefined; + + /** + *These are one or more items in the returned results + * that match values for ETags input during + * a search of Amazon S3 backup metadata.
+ * @public + */ + ETag?: string | undefined; + + /** + *These are one or more items in the returned results + * that match values for version IDs input during + * a search of Amazon S3 backup metadata.
+ * @public + */ + VersionId?: string | undefined; +} + +/** + *This is an object representing the item + * returned in the results of a search for a specific + * resource type.
+ * @public + */ +export type ResultItem = ResultItem.EBSResultItemMember | ResultItem.S3ResultItemMember | ResultItem.$UnknownMember; + +/** + * @public + */ +export namespace ResultItem { + /** + *These are items returned in the search results + * of an Amazon S3 search.
+ * @public + */ + export interface S3ResultItemMember { + S3ResultItem: S3ResultItem; + EBSResultItem?: never; + $unknown?: never; + } + + /** + *These are items returned in the search results + * of an Amazon EBS search.
+ * @public + */ + export interface EBSResultItemMember { + S3ResultItem?: never; + EBSResultItem: EBSResultItem; + $unknown?: never; + } + + /** + * @public + */ + export interface $UnknownMember { + S3ResultItem?: never; + EBSResultItem?: never; + $unknown: [string, any]; + } + + export interface VisitorThe results consist of either EBSResultItem or S3ResultItem.
+ * @public + */ + Results: ResultItem[] | undefined; + + /** + *The next item following a partial list of + * search job results.
+ *For example, if a request
+ * is made to return MaxResults
number of backups, NextToken
+ * allows you to return more items in your list starting at the location pointed to by the
+ * next token.
The Amazon Resource Name (ARN) that uniquely identifies + * the resource.>
+ * @public + */ + ResourceArn: string | undefined; +} + +/** + * @public + */ +export interface ListTagsForResourceResponse { + /** + *List of tags returned by the operation.
+ * @public + */ + Tags?: RecordThis contains information results retrieved from + * a search job that may not have completed.
+ * @public + */ +export interface CurrentSearchProgress { + /** + *This number is the sum of all backups that + * have been scanned so far during a search job.
+ * @public + */ + RecoveryPointsScannedCount?: number | undefined; + + /** + *This number is the sum of all items that + * have been scanned so far during a search job.
+ * @public + */ + ItemsScannedCount?: number | undefined; + + /** + *This number is the sum of all items that match + * the item filters in a search job in progress.
+ * @public + */ + ItemsMatchedCount?: number | undefined; +} + +/** + * @public + */ +export interface GetSearchJobInput { + /** + *Required unique string that specifies the + * search job.
+ * @public + */ + SearchJobIdentifier: string | undefined; +} + +/** + * @public + * @enum + */ +export const TimeConditionOperator = { + EQUALS_TO: "EQUALS_TO", + GREATER_THAN_EQUAL_TO: "GREATER_THAN_EQUAL_TO", + LESS_THAN_EQUAL_TO: "LESS_THAN_EQUAL_TO", + NOT_EQUALS_TO: "NOT_EQUALS_TO", +} as const; + +/** + * @public + */ +export type TimeConditionOperator = (typeof TimeConditionOperator)[keyof typeof TimeConditionOperator]; + +/** + *A time condition denotes a creation time, last modification time, + * or other time.
+ * @public + */ +export interface TimeCondition { + /** + *This is the timestamp value of the time condition.
+ * @public + */ + Value: Date | undefined; + + /** + *A string that defines what values will be + * returned.
+ *If this is included, avoid combinations of
+ * operators that will return all possible values.
+ * For example, including both EQUALS_TO
+ * and NOT_EQUALS_TO
with a value of 4
+ * will return all values.
This contains the value of the string and can contain + * one or more operators.
+ * @public + */ +export interface StringCondition { + /** + *The value of the string.
+ * @public + */ + Value: string | undefined; + + /** + *A string that defines what values will be + * returned.
+ *If this is included, avoid combinations of
+ * operators that will return all possible values.
+ * For example, including both EQUALS_TO
+ * and NOT_EQUALS_TO
with a value of 4
+ * will return all values.
The long condition contains a Value
+ * and can optionally contain an Operator
.
The value of an item included in one of the search + * item filters.
+ * @public + */ + Value: number | undefined; + + /** + *A string that defines what values will be + * returned.
+ *If this is included, avoid combinations of
+ * operators that will return all possible values.
+ * For example, including both EQUALS_TO
+ * and NOT_EQUALS_TO
with a value of 4
+ * will return all values.
This contains arrays of objects, which may include + * CreationTimes time condition objects, FilePaths + * string objects, LastModificationTimes time + * condition objects,
+ * @public + */ +export interface EBSItemFilter { + /** + *You can include 1 to 10 values.
+ *If one file path is included, the results will + * return only items that match the file path.
+ *If more than one file path is included, the + * results will return all items that match any of the + * file paths.
+ * @public + */ + FilePaths?: StringCondition[] | undefined; + + /** + *You can include 1 to 10 values.
+ *If one is included, the results will + * return only items that match.
+ *If more than one is included, the + * results will return all items that match any of + * the included values.
+ * @public + */ + Sizes?: LongCondition[] | undefined; + + /** + *You can include 1 to 10 values.
+ *If one is included, the results will + * return only items that match.
+ *If more than one is included, the + * results will return all items that match any of + * the included values.
+ * @public + */ + CreationTimes?: TimeCondition[] | undefined; + + /** + *You can include 1 to 10 values.
+ *If one is included, the results will + * return only items that match.
+ *If more than one is included, the + * results will return all items that match any of + * the included values.
+ * @public + */ + LastModificationTimes?: TimeCondition[] | undefined; +} + +/** + *This contains arrays of objects, which may include + * ObjectKeys, Sizes, CreationTimes, VersionIds, and/or + * Etags.
+ * @public + */ +export interface S3ItemFilter { + /** + *You can include 1 to 10 values.
+ *If one value is included, the results will + * return only items that match the value.
+ *If more than one value is included, the + * results will return all items that match any of the + * values.
+ * @public + */ + ObjectKeys?: StringCondition[] | undefined; + + /** + *You can include 1 to 10 values.
+ *If one value is included, the results will + * return only items that match the value.
+ *If more than one value is included, the + * results will return all items that match any of the + * values.
+ * @public + */ + Sizes?: LongCondition[] | undefined; + + /** + *You can include 1 to 10 values.
+ *If one value is included, the results will + * return only items that match the value.
+ *If more than one value is included, the + * results will return all items that match any of the + * values.
+ * @public + */ + CreationTimes?: TimeCondition[] | undefined; + + /** + *You can include 1 to 10 values.
+ *If one value is included, the results will + * return only items that match the value.
+ *If more than one value is included, the + * results will return all items that match any of the + * values.
+ * @public + */ + VersionIds?: StringCondition[] | undefined; + + /** + *You can include 1 to 10 values.
+ *If one value is included, the results will + * return only items that match the value.
+ *If more than one value is included, the + * results will return all items that match any of the + * values.
+ * @public + */ + ETags?: StringCondition[] | undefined; +} + +/** + *Item Filters represent all input item + * properties specified when the search was + * created.
+ *Contains either EBSItemFilters or + * S3ItemFilters
+ * @public + */ +export interface ItemFilters { + /** + *This array can contain CreationTimes, ETags, + * ObjectKeys, Sizes, or VersionIds objects.
+ * @public + */ + S3ItemFilters?: S3ItemFilter[] | undefined; + + /** + *This array can contain CreationTimes, + * FilePaths, LastModificationTimes, or Sizes objects.
+ * @public + */ + EBSItemFilters?: EBSItemFilter[] | undefined; +} + +/** + *The search scope is all backup + * properties input into a search.
+ * @public + */ +export interface SearchScope { + /** + *The resource types included in a search.
+ *Eligible resource types include S3 and EBS.
+ * @public + */ + BackupResourceTypes: ResourceType[] | undefined; + + /** + *This is the time a backup resource was created.
+ * @public + */ + BackupResourceCreationTime?: BackupCreationTimeFilter | undefined; + + /** + *The Amazon Resource Name (ARN) that uniquely identifies + * the source resources.
+ * @public + */ + SourceResourceArns?: string[] | undefined; + + /** + *The Amazon Resource Name (ARN) that uniquely identifies + * the backup resources.
+ * @public + */ + BackupResourceArns?: string[] | undefined; + + /** + *These are one or more tags on the backup (recovery + * point).
+ * @public + */ + BackupResourceTags?: RecordThe summary of the specified search job scope, + * including: + *
+ *TotalBackupsToScanCount, the number of + * recovery points returned by the search.
+ *TotalItemsToScanCount, the number of + * items returned by the search.
+ *This is the count of the total number of backups + * that will be scanned in a search.
+ * @public + */ + TotalRecoveryPointsToScanCount?: number | undefined; + + /** + *This is the count of the total number of items + * that will be scanned in a search.
+ * @public + */ + TotalItemsToScanCount?: number | undefined; +} + +/** + * @public + */ +export interface GetSearchJobOutput { + /** + *Returned name of the specified search job.
+ * @public + */ + Name?: string | undefined; + + /** + *Returned summary of the specified search job scope, + * including: + *
+ *TotalBackupsToScanCount, the number of + * recovery points returned by the search.
+ *TotalItemsToScanCount, the number of + * items returned by the search.
+ *Returns numbers representing BackupsScannedCount, + * ItemsScanned, and ItemsMatched.
+ * @public + */ + CurrentSearchProgress?: CurrentSearchProgress | undefined; + + /** + *A status message will be returned for either a
+ * earch job with a status of ERRORED
or a status of
+ * COMPLETED
jobs with issues.
For example, a message may say that a search + * contained recovery points unable to be scanned because + * of a permissions issue.
+ * @public + */ + StatusMessage?: string | undefined; + + /** + *The encryption key for the specified + * search job.
+ *Example: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
.
The date and time that a search job completed, in Unix format and Coordinated
+ * Universal Time (UTC). The value of CompletionTime
is accurate to milliseconds.
+ * For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087
+ * AM.
The current status of the specified search job.
+ *A search job may have one of the following statuses:
+ * RUNNING
; COMPLETED
; STOPPED
;
+ * FAILED
; TIMED_OUT
; or EXPIRED
+ * .
The search scope is all backup + * properties input into a search.
+ * @public + */ + SearchScope: SearchScope | undefined; + + /** + *Item Filters represent all input item + * properties specified when the search was + * created.
+ * @public + */ + ItemFilters: ItemFilters | undefined; + + /** + *The date and time that a search job was created, in Unix format and Coordinated
+ * Universal Time (UTC). The value of CompletionTime
is accurate to milliseconds.
+ * For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087
+ * AM.
The unique string that identifies the specified search job.
+ * @public + */ + SearchJobIdentifier: string | undefined; + + /** + *The unique string that identifies the Amazon Resource + * Name (ARN) of the specified search job.
+ * @public + */ + SearchJobArn: string | undefined; +} + +/** + * @public + */ +export interface ListSearchJobsInput { + /** + *Include this parameter to filter list by search + * job status.
+ * @public + */ + ByStatus?: SearchJobState | undefined; + + /** + *The next item following a partial list of returned + * search jobs.
+ *For example, if a request
+ * is made to return MaxResults
number of backups, NextToken
+ * allows you to return more items in your list starting at the location pointed to by the
+ * next token.
The maximum number of resource list items to be returned.
+ * @public + */ + MaxResults?: number | undefined; +} + +/** + *This is information pertaining to a search job.
+ * @public + */ +export interface SearchJobSummary { + /** + *The unique string that specifies the search job.
+ * @public + */ + SearchJobIdentifier?: string | undefined; + + /** + *The unique string that identifies the Amazon Resource + * Name (ARN) of the specified search job.
+ * @public + */ + SearchJobArn?: string | undefined; + + /** + *This is the name of the search job.
+ * @public + */ + Name?: string | undefined; + + /** + *This is the status of the search job.
+ * @public + */ + Status?: SearchJobState | undefined; + + /** + *This is the creation time of the search job.
+ * @public + */ + CreationTime?: Date | undefined; + + /** + *This is the completion time of the search job.
+ * @public + */ + CompletionTime?: Date | undefined; + + /** + *Returned summary of the specified search job scope, + * including: + *
+ *TotalBackupsToScanCount, the number of + * recovery points returned by the search.
+ *TotalItemsToScanCount, the number of + * items returned by the search.
+ *A status message will be returned for either a
+ * earch job with a status of ERRORED
or a status of
+ * COMPLETED
jobs with issues.
For example, a message may say that a search + * contained recovery points unable to be scanned because + * of a permissions issue.
+ * @public + */ + StatusMessage?: string | undefined; +} + +/** + * @public + */ +export interface ListSearchJobsOutput { + /** + *The search jobs among the list, with details of + * the returned search jobs.
+ * @public + */ + SearchJobs: SearchJobSummary[] | undefined; + + /** + *The next item following a partial list of returned backups + * included in a search job.
+ *For example, if a request
+ * is made to return MaxResults
number of backups, NextToken
+ * allows you to return more items in your list starting at the location pointed to by the
+ * next token.
The request denied due to exceeding the quota limits permitted.
+ * @public + */ +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + /** + *Identifier of the resource.
+ * @public + */ + resourceId: string | undefined; + + /** + *Type of resource.
+ * @public + */ + resourceType: string | undefined; + + /** + *This is the code unique to the originating service with the quota.
+ * @public + */ + serviceCode: string | undefined; + + /** + *This is the code specific to the quota type.
+ * @public + */ + quotaCode: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionTypeList of tags returned by the operation.
+ * @public + */ + Tags?: RecordInclude alphanumeric characters to create a + * name for this search job.
+ * @public + */ + Name?: string | undefined; + + /** + *The encryption key for the specified + * search job.
+ * @public + */ + EncryptionKeyArn?: string | undefined; + + /** + *Include this parameter to allow multiple identical + * calls for idempotency.
+ *A client token is valid for 8 hours after the first + * request that uses it is completed. After this time, + * any request with the same token is treated as a + * new request.
+ * @public + */ + ClientToken?: string | undefined; + + /** + *This object can contain BackupResourceTypes, + * BackupResourceArns, BackupResourceCreationTime, + * BackupResourceTags, and SourceResourceArns to + * filter the recovery points returned by the search + * job.
+ * @public + */ + SearchScope: SearchScope | undefined; + + /** + *Item Filters represent all input item + * properties specified when the search was + * created.
+ *Contains either EBSItemFilters or + * S3ItemFilters
+ * @public + */ + ItemFilters?: ItemFilters | undefined; +} + +/** + * @public + */ +export interface StartSearchJobOutput { + /** + *The unique string that identifies the Amazon Resource + * Name (ARN) of the specified search job.
+ * @public + */ + SearchJobArn?: string | undefined; + + /** + *The date and time that a job was created, in Unix format and Coordinated
+ * Universal Time (UTC). The value of CompletionTime
is accurate to milliseconds.
+ * For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087
+ * AM.
The unique string that specifies the search job.
+ * @public + */ + SearchJobIdentifier?: string | undefined; +} + +/** + * @public + */ +export interface StopSearchJobInput { + /** + *The unique string that specifies the search job.
+ * @public + */ + SearchJobIdentifier: string | undefined; +} + +/** + * @public + */ +export interface StopSearchJobOutput {} + +/** + * @public + * @enum + */ +export const ExportJobStatus = { + COMPLETED: "COMPLETED", + FAILED: "FAILED", + RUNNING: "RUNNING", +} as const; + +/** + * @public + */ +export type ExportJobStatus = (typeof ExportJobStatus)[keyof typeof ExportJobStatus]; + +/** + *This specification contains a required string of the + * destination bucket; optionally, you can include the + * destination prefix.
+ * @public + */ +export interface S3ExportSpecification { + /** + *This specifies the destination Amazon S3 + * bucket for the export job.
+ * @public + */ + DestinationBucket: string | undefined; + + /** + *This specifies the prefix for the destination + * Amazon S3 bucket for the export job.
+ * @public + */ + DestinationPrefix?: string | undefined; +} + +/** + *This contains the export specification object.
+ * @public + */ +export type ExportSpecification = ExportSpecification.S3ExportSpecificationMember | ExportSpecification.$UnknownMember; + +/** + * @public + */ +export namespace ExportSpecification { + /** + *This specifies the destination Amazon S3 + * bucket for the export job. And, if included, it also + * specifies the destination prefix.
+ * @public + */ + export interface S3ExportSpecificationMember { + s3ExportSpecification: S3ExportSpecification; + $unknown?: never; + } + + /** + * @public + */ + export interface $UnknownMember { + s3ExportSpecification?: never; + $unknown: [string, any]; + } + + export interface VisitorThis is the unique string that identifies a + * specific export job.
+ *Required for this operation.
+ * @public + */ + ExportJobIdentifier: string | undefined; +} + +/** + * @public + */ +export interface GetSearchResultExportJobOutput { + /** + *This is the unique string that identifies the + * specified export job.
+ * @public + */ + ExportJobIdentifier: string | undefined; + + /** + *The unique Amazon Resource Name (ARN) that uniquely identifies + * the export job.
+ * @public + */ + ExportJobArn?: string | undefined; + + /** + *This is the current status of the export job.
+ * @public + */ + Status?: ExportJobStatus | undefined; + + /** + *The date and time that an export job was created, in Unix format and Coordinated Universal
+ * Time (UTC). The value of CreationTime
is accurate to milliseconds. For
+ * example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087
+ * AM.
The date and time that an export job completed, in Unix format and Coordinated Universal
+ * Time (UTC). The value of CreationTime
is accurate to milliseconds. For
+ * example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087
+ * AM.
A status message is a string that is returned for search job
+ * with a status of FAILED
, along with steps to remedy
+ * and retry the operation.
The export specification consists of the destination + * S3 bucket to which the search results were exported, along + * with the destination prefix.
+ * @public + */ + ExportSpecification?: ExportSpecification | undefined; + + /** + *The unique string that identifies the Amazon Resource + * Name (ARN) of the specified search job.
+ * @public + */ + SearchJobArn?: string | undefined; +} + +/** + * @public + */ +export interface ListSearchResultExportJobsInput { + /** + *The search jobs to be included in the export job + * can be filtered by including this parameter.
+ * @public + */ + Status?: ExportJobStatus | undefined; + + /** + *The unique string that specifies the search job.
+ * @public + */ + SearchJobIdentifier?: string | undefined; + + /** + *The next item following a partial list of returned backups + * included in a search job.
+ *For example, if a request
+ * is made to return MaxResults
number of backups, NextToken
+ * allows you to return more items in your list starting at the location pointed to by the
+ * next token.
The maximum number of resource list items to be returned.
+ * @public + */ + MaxResults?: number | undefined; +} + +/** + *This is the summary of an export job.
+ * @public + */ +export interface ExportJobSummary { + /** + *This is the unique string that identifies a + * specific export job.
+ * @public + */ + ExportJobIdentifier: string | undefined; + + /** + *This is the unique ARN (Amazon Resource Name) that + * belongs to the new export job.
+ * @public + */ + ExportJobArn?: string | undefined; + + /** + *The status of the export job is one of the + * following:
+ *
+ * CREATED
; RUNNING
;
+ * FAILED
; or COMPLETED
.
This is a timestamp of the time the export job + * was created.
+ * @public + */ + CreationTime?: Date | undefined; + + /** + *This is a timestamp of the time the export job + * compeleted.
+ * @public + */ + CompletionTime?: Date | undefined; + + /** + *A status message is a string that is returned for an export + * job.
+ *A status message is included for any status other
+ * than COMPLETED
without issues.
The unique string that identifies the Amazon Resource + * Name (ARN) of the specified search job.
+ * @public + */ + SearchJobArn?: string | undefined; +} + +/** + * @public + */ +export interface ListSearchResultExportJobsOutput { + /** + *The operation returns the included export jobs.
+ * @public + */ + ExportJobs: ExportJobSummary[] | undefined; + + /** + *The next item following a partial list of returned backups + * included in a search job.
+ *For example, if a request
+ * is made to return MaxResults
number of backups, NextToken
+ * allows you to return more items in your list starting at the location pointed to by the
+ * next token.
The unique string that specifies the search job.
+ * @public + */ + SearchJobIdentifier: string | undefined; + + /** + *This specification contains a required string of the + * destination bucket; optionally, you can include the + * destination prefix.
+ * @public + */ + ExportSpecification: ExportSpecification | undefined; + + /** + *Include this parameter to allow multiple identical + * calls for idempotency.
+ *A client token is valid for 8 hours after the first + * request that uses it is completed. After this time, + * any request with the same token is treated as a + * new request.
+ * @public + */ + ClientToken?: string | undefined; + + /** + *Optional tags to include. A tag is a key-value pair you can use to manage, + * filter, and search for your resources. Allowed characters include UTF-8 letters, + * numbers, spaces, and the following characters: + - = . _ : /.
+ * @public + */ + Tags?: RecordThis parameter specifies the role ARN used to start + * the search results export jobs.
+ * @public + */ + RoleArn?: string | undefined; +} + +/** + * @public + */ +export interface StartSearchResultExportJobOutput { + /** + *This is the unique ARN (Amazon Resource Name) that + * belongs to the new export job.
+ * @public + */ + ExportJobArn?: string | undefined; + + /** + *This is the unique identifier that + * specifies the new export job.
+ * @public + */ + ExportJobIdentifier: string | undefined; +} + +/** + * @public + */ +export interface TagResourceRequest { + /** + *The Amazon Resource Name (ARN) that uniquely identifies + * the resource.
+ *This is the resource that will have the indicated tags.
+ * @public + */ + ResourceArn: string | undefined; + + /** + *Required tags to include. A tag is a key-value pair you can use to manage, + * filter, and search for your resources. Allowed characters include UTF-8 letters, + * numbers, spaces, and the following characters: + - = . _ : /.
+ * @public + */ + Tags: RecordThe Amazon Resource Name (ARN) that uniquely identifies + * the resource where you want to remove tags.
+ * @public + */ + ResourceArn: string | undefined; + + /** + *This required parameter contains the tag keys you + * want to remove from the source.
+ * @public + */ + TagKeys: string[] | undefined; +} + +/** + * @public + */ +export interface UntagResourceResponse {} + +/** + * @internal + */ +export const EBSResultItemFilterSensitiveLog = (obj: EBSResultItem): any => ({ + ...obj, + ...(obj.FilePath && { FilePath: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const S3ResultItemFilterSensitiveLog = (obj: S3ResultItem): any => ({ + ...obj, + ...(obj.ObjectKey && { ObjectKey: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const ResultItemFilterSensitiveLog = (obj: ResultItem): any => { + if (obj.S3ResultItem !== undefined) return { S3ResultItem: S3ResultItemFilterSensitiveLog(obj.S3ResultItem) }; + if (obj.EBSResultItem !== undefined) return { EBSResultItem: EBSResultItemFilterSensitiveLog(obj.EBSResultItem) }; + if (obj.$unknown !== undefined) return { [obj.$unknown[0]]: "UNKNOWN" }; +}; + +/** + * @internal + */ +export const ListSearchJobResultsOutputFilterSensitiveLog = (obj: ListSearchJobResultsOutput): any => ({ + ...obj, + ...(obj.Results && { Results: obj.Results.map((item) => ResultItemFilterSensitiveLog(item)) }), +}); diff --git a/clients/client-backupsearch/src/pagination/Interfaces.ts b/clients/client-backupsearch/src/pagination/Interfaces.ts new file mode 100644 index 000000000000..cb351c831d0d --- /dev/null +++ b/clients/client-backupsearch/src/pagination/Interfaces.ts @@ -0,0 +1,11 @@ +// smithy-typescript generated code +import { PaginationConfiguration } from "@smithy/types"; + +import { BackupSearchClient } from "../BackupSearchClient"; + +/** + * @public + */ +export interface BackupSearchPaginationConfiguration extends PaginationConfiguration { + client: BackupSearchClient; +} diff --git a/clients/client-backupsearch/src/pagination/ListSearchJobBackupsPaginator.ts b/clients/client-backupsearch/src/pagination/ListSearchJobBackupsPaginator.ts new file mode 100644 index 000000000000..21beeb203463 --- /dev/null +++ b/clients/client-backupsearch/src/pagination/ListSearchJobBackupsPaginator.ts @@ -0,0 +1,24 @@ +// smithy-typescript generated code +import { createPaginator } from "@smithy/core"; +import { Paginator } from "@smithy/types"; + +import { BackupSearchClient } from "../BackupSearchClient"; +import { + ListSearchJobBackupsCommand, + ListSearchJobBackupsCommandInput, + ListSearchJobBackupsCommandOutput, +} from "../commands/ListSearchJobBackupsCommand"; +import { BackupSearchPaginationConfiguration } from "./Interfaces"; + +/** + * @public + */ +export const paginateListSearchJobBackups: ( + config: BackupSearchPaginationConfiguration, + input: ListSearchJobBackupsCommandInput, + ...rest: any[] +) => PaginatorUser does not have sufficient access to perform this action.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "You do not have sufficient access to perform this action.
", + "smithy.api#error": "client", + "smithy.api#httpError": 403 + } + }, + "com.amazonaws.backupsearch#BackupCreationTimeFilter": { + "type": "structure", + "members": { + "CreatedAfter": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "This timestamp includes recovery points only \n created after the specified time.
" + } + }, + "CreatedBefore": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "This timestamp includes recovery points only \n created before the specified time.
" + } + } + }, + "traits": { + "smithy.api#documentation": "This filters by recovery points within the CreatedAfter \n and CreatedBefore timestamps.
" + } + }, + "com.amazonaws.backupsearch#ConflictException": { + "type": "structure", + "members": { + "message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "Updating or deleting a resource can cause an inconsistent state.
", + "smithy.api#required": {} + } + }, + "resourceId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "Identifier of the resource affected.
", + "smithy.api#required": {} + } + }, + "resourceType": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "Type of the resource affected.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "This exception occurs when a conflict with a previous successful\n operation is detected. This generally occurs when the previous \n operation did not have time to propagate to the host serving the \n current request.
\nA retry (with appropriate backoff logic) is the recommended \n response to this exception.
", + "smithy.api#error": "client", + "smithy.api#httpError": 409 + } + }, + "com.amazonaws.backupsearch#CryoBackupSearchService": { + "type": "service", + "version": "2018-05-10", + "operations": [ + { + "target": "com.amazonaws.backupsearch#ListSearchJobBackups" + }, + { + "target": "com.amazonaws.backupsearch#ListSearchJobResults" + }, + { + "target": "com.amazonaws.backupsearch#ListTagsForResource" + }, + { + "target": "com.amazonaws.backupsearch#TagResource" + }, + { + "target": "com.amazonaws.backupsearch#UntagResource" + } + ], + "resources": [ + { + "target": "com.amazonaws.backupsearch#SearchJob" + }, + { + "target": "com.amazonaws.backupsearch#SearchResultExportJob" + } + ], + "errors": [ + { + "target": "com.amazonaws.backupsearch#AccessDeniedException" + }, + { + "target": "com.amazonaws.backupsearch#InternalServerException" + }, + { + "target": "com.amazonaws.backupsearch#ThrottlingException" + }, + { + "target": "com.amazonaws.backupsearch#ValidationException" + } + ], + "traits": { + "aws.api#service": { + "sdkId": "BackupSearch", + "arnNamespace": "backup-search", + "endpointPrefix": "backup-search", + "cloudTrailEventSource": "backup.amazonaws.com" + }, + "aws.auth#sigv4": { + "name": "backup-search" + }, + "aws.endpoints#dualStackOnlyEndpoints": {}, + "aws.endpoints#standardPartitionalEndpoints": { + "endpointPatternType": "service_region_dnsSuffix" + }, + "aws.protocols#restJson1": {}, + "smithy.api#cors": { + "additionalAllowedHeaders": [ + "*", + "Authorization", + "Date", + "X-Amz-Date", + "X-Amz-Security-Token", + "X-Amz-Target", + "content-type", + "x-amz-content-sha256", + "x-amz-user-agent", + "x-amzn-platform-id", + "x-amzn-trace-id" + ], + "additionalExposedHeaders": [ + "x-amzn-errortype", + "x-amzn-requestid", + "x-amzn-errormessage", + "x-amzn-trace-id", + "x-amzn-requestid", + "x-amz-apigw-id", + "date" + ] + }, + "smithy.api#documentation": "Backup Search is the recovery point and item level search for Backup.
\nFor additional information, see:
\n\n Backup API Reference\n
\nThis number is the sum of all backups that \n have been scanned so far during a search job.
" + } + }, + "ItemsScannedCount": { + "target": "smithy.api#Long", + "traits": { + "smithy.api#documentation": "This number is the sum of all items that \n have been scanned so far during a search job.
" + } + }, + "ItemsMatchedCount": { + "target": "smithy.api#Long", + "traits": { + "smithy.api#documentation": "This number is the sum of all items that match \n the item filters in a search job in progress.
" + } + } + }, + "traits": { + "smithy.api#documentation": "This contains information results retrieved from \n a search job that may not have completed.
" + } + }, + "com.amazonaws.backupsearch#EBSItemFilter": { + "type": "structure", + "members": { + "FilePaths": { + "target": "com.amazonaws.backupsearch#StringConditionList", + "traits": { + "smithy.api#documentation": "You can include 1 to 10 values.
\nIf one file path is included, the results will \n return only items that match the file path.
\nIf more than one file path is included, the \n results will return all items that match any of the \n file paths.
" + } + }, + "Sizes": { + "target": "com.amazonaws.backupsearch#LongConditionList", + "traits": { + "smithy.api#documentation": "You can include 1 to 10 values.
\nIf one is included, the results will \n return only items that match.
\nIf more than one is included, the \n results will return all items that match any of \n the included values.
" + } + }, + "CreationTimes": { + "target": "com.amazonaws.backupsearch#TimeConditionList", + "traits": { + "smithy.api#documentation": "You can include 1 to 10 values.
\nIf one is included, the results will \n return only items that match.
\nIf more than one is included, the \n results will return all items that match any of \n the included values.
" + } + }, + "LastModificationTimes": { + "target": "com.amazonaws.backupsearch#TimeConditionList", + "traits": { + "smithy.api#documentation": "You can include 1 to 10 values.
\nIf one is included, the results will \n return only items that match.
\nIf more than one is included, the \n results will return all items that match any of \n the included values.
" + } + } + }, + "traits": { + "smithy.api#documentation": "This contains arrays of objects, which may include \n CreationTimes time condition objects, FilePaths \n string objects, LastModificationTimes time \n condition objects,
" + } + }, + "com.amazonaws.backupsearch#EBSItemFilters": { + "type": "list", + "member": { + "target": "com.amazonaws.backupsearch#EBSItemFilter" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 10 + } + } + }, + "com.amazonaws.backupsearch#EBSResultItem": { + "type": "structure", + "members": { + "BackupResourceArn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "These are one or more items in the \n results that match values for the Amazon Resource \n Name (ARN) of recovery points returned in a search \n of Amazon EBS backup metadata.
" + } + }, + "SourceResourceArn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "These are one or more items in the \n results that match values for the Amazon Resource \n Name (ARN) of source resources returned in a search \n of Amazon EBS backup metadata.
" + } + }, + "BackupVaultName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "The name of the backup vault.
" + } + }, + "FileSystemIdentifier": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "These are one or more items in the \n results that match values for file systems returned \n in a search of Amazon EBS backup metadata.
" + } + }, + "FilePath": { + "target": "com.amazonaws.backupsearch#FilePath", + "traits": { + "smithy.api#documentation": "These are one or more items in the \n results that match values for file paths returned \n in a search of Amazon EBS backup metadata.
" + } + }, + "FileSize": { + "target": "smithy.api#Long", + "traits": { + "smithy.api#documentation": "These are one or more items in the \n results that match values for file sizes returned \n in a search of Amazon EBS backup metadata.
" + } + }, + "CreationTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "These are one or more items in the \n results that match values for creation times returned \n in a search of Amazon EBS backup metadata.
" + } + }, + "LastModifiedTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "These are one or more items in the \n results that match values for Last Modified Time returned \n in a search of Amazon EBS backup metadata.
" + } + } + }, + "traits": { + "smithy.api#documentation": "These are the items returned in the results of \n a search of Amazon EBS backup metadata.
" + } + }, + "com.amazonaws.backupsearch#EncryptionKeyArn": { + "type": "string", + "traits": { + "aws.api#arnReference": { + "type": "AWS::KMS::Key" + } + } + }, + "com.amazonaws.backupsearch#ExportJobArn": { + "type": "string", + "traits": { + "aws.api#arnReference": { + "service": "com.amazonaws.backupsearch#CryoBackupSearchService" + } + } + }, + "com.amazonaws.backupsearch#ExportJobStatus": { + "type": "enum", + "members": { + "RUNNING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RUNNING" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FAILED" + } + }, + "COMPLETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPLETED" + } + } + } + }, + "com.amazonaws.backupsearch#ExportJobSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.backupsearch#ExportJobSummary" + } + }, + "com.amazonaws.backupsearch#ExportJobSummary": { + "type": "structure", + "members": { + "ExportJobIdentifier": { + "target": "com.amazonaws.backupsearch#GenericId", + "traits": { + "smithy.api#documentation": "This is the unique string that identifies a \n specific export job.
", + "smithy.api#required": {} + } + }, + "ExportJobArn": { + "target": "com.amazonaws.backupsearch#ExportJobArn", + "traits": { + "smithy.api#documentation": "This is the unique ARN (Amazon Resource Name) that \n belongs to the new export job.
" + } + }, + "Status": { + "target": "com.amazonaws.backupsearch#ExportJobStatus", + "traits": { + "smithy.api#documentation": "The status of the export job is one of the \n following:
\n\n CREATED
; RUNNING
; \n FAILED
; or COMPLETED
.
This is a timestamp of the time the export job \n was created.
" + } + }, + "CompletionTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "This is a timestamp of the time the export job \n compeleted.
" + } + }, + "StatusMessage": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "A status message is a string that is returned for an export\n job.
\nA status message is included for any status other \n than COMPLETED
without issues.
The unique string that identifies the Amazon Resource \n Name (ARN) of the specified search job.
" + } + } + }, + "traits": { + "smithy.api#documentation": "This is the summary of an export job.
" + } + }, + "com.amazonaws.backupsearch#ExportSpecification": { + "type": "union", + "members": { + "s3ExportSpecification": { + "target": "com.amazonaws.backupsearch#S3ExportSpecification", + "traits": { + "smithy.api#documentation": "This specifies the destination Amazon S3 \n bucket for the export job. And, if included, it also \n specifies the destination prefix.
" + } + } + }, + "traits": { + "smithy.api#documentation": "This contains the export specification object.
" + } + }, + "com.amazonaws.backupsearch#FilePath": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.backupsearch#GenericId": { + "type": "string" + }, + "com.amazonaws.backupsearch#GetSearchJob": { + "type": "operation", + "input": { + "target": "com.amazonaws.backupsearch#GetSearchJobInput" + }, + "output": { + "target": "com.amazonaws.backupsearch#GetSearchJobOutput" + }, + "errors": [ + { + "target": "com.amazonaws.backupsearch#ResourceNotFoundException" + } + ], + "traits": { + "smithy.api#documentation": "This operation retrieves metadata of a search job, \n including its progress.
", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/search-jobs/{SearchJobIdentifier}" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.backupsearch#GetSearchJobInput": { + "type": "structure", + "members": { + "SearchJobIdentifier": { + "target": "com.amazonaws.backupsearch#GenericId", + "traits": { + "smithy.api#documentation": "Required unique string that specifies the \n search job.
", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.backupsearch#GetSearchJobOutput": { + "type": "structure", + "members": { + "Name": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "Returned name of the specified search job.
" + } + }, + "SearchScopeSummary": { + "target": "com.amazonaws.backupsearch#SearchScopeSummary", + "traits": { + "smithy.api#documentation": "Returned summary of the specified search job scope, \n including:\n
\nTotalBackupsToScanCount, the number of \n recovery points returned by the search.
\nTotalItemsToScanCount, the number of \n items returned by the search.
\nReturns numbers representing BackupsScannedCount, \n ItemsScanned, and ItemsMatched.
" + } + }, + "StatusMessage": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "A status message will be returned for either a \n earch job with a status of ERRORED
or a status of \n COMPLETED
jobs with issues.
For example, a message may say that a search \n contained recovery points unable to be scanned because \n of a permissions issue.
" + } + }, + "EncryptionKeyArn": { + "target": "com.amazonaws.backupsearch#EncryptionKeyArn", + "traits": { + "smithy.api#documentation": "The encryption key for the specified \n search job.
\nExample: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
.
The date and time that a search job completed, in Unix format and Coordinated\n Universal Time (UTC). The value of CompletionTime
is accurate to milliseconds.\n For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087\n AM.
The current status of the specified search job.
\nA search job may have one of the following statuses: \n RUNNING
; COMPLETED
; STOPPED
; \n FAILED
; TIMED_OUT
; or EXPIRED
\n .
The search scope is all backup \n properties input into a search.
", + "smithy.api#required": {} + } + }, + "ItemFilters": { + "target": "com.amazonaws.backupsearch#ItemFilters", + "traits": { + "smithy.api#documentation": "Item Filters represent all input item \n properties specified when the search was \n created.
", + "smithy.api#required": {} + } + }, + "CreationTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "The date and time that a search job was created, in Unix format and Coordinated\n Universal Time (UTC). The value of CompletionTime
is accurate to milliseconds.\n For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087\n AM.
The unique string that identifies the specified search job.
", + "smithy.api#required": {} + } + }, + "SearchJobArn": { + "target": "com.amazonaws.backupsearch#SearchJobArn", + "traits": { + "smithy.api#documentation": "The unique string that identifies the Amazon Resource \n Name (ARN) of the specified search job.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.backupsearch#GetSearchResultExportJob": { + "type": "operation", + "input": { + "target": "com.amazonaws.backupsearch#GetSearchResultExportJobInput" + }, + "output": { + "target": "com.amazonaws.backupsearch#GetSearchResultExportJobOutput" + }, + "errors": [ + { + "target": "com.amazonaws.backupsearch#ResourceNotFoundException" + } + ], + "traits": { + "smithy.api#documentation": "This operation retrieves the metadata of an export job.
\nAn export job is an operation that transmits the results \n of a search job to a specified S3 bucket in a \n .csv file.
\nAn export job allows you to retain results of a search \n beyond the search job's scheduled retention of 7 days.
", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/export-search-jobs/{ExportJobIdentifier}" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.backupsearch#GetSearchResultExportJobInput": { + "type": "structure", + "members": { + "ExportJobIdentifier": { + "target": "com.amazonaws.backupsearch#GenericId", + "traits": { + "smithy.api#documentation": "This is the unique string that identifies a \n specific export job.
\nRequired for this operation.
", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.backupsearch#GetSearchResultExportJobOutput": { + "type": "structure", + "members": { + "ExportJobIdentifier": { + "target": "com.amazonaws.backupsearch#GenericId", + "traits": { + "smithy.api#documentation": "This is the unique string that identifies the \n specified export job.
", + "smithy.api#required": {} + } + }, + "ExportJobArn": { + "target": "com.amazonaws.backupsearch#ExportJobArn", + "traits": { + "smithy.api#documentation": "The unique Amazon Resource Name (ARN) that uniquely identifies \n the export job.
" + } + }, + "Status": { + "target": "com.amazonaws.backupsearch#ExportJobStatus", + "traits": { + "smithy.api#documentation": "This is the current status of the export job.
" + } + }, + "CreationTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "The date and time that an export job was created, in Unix format and Coordinated Universal\n Time (UTC). The value of CreationTime
is accurate to milliseconds. For\n example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087\n AM.
The date and time that an export job completed, in Unix format and Coordinated Universal\n Time (UTC). The value of CreationTime
is accurate to milliseconds. For\n example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087\n AM.
A status message is a string that is returned for search job \n with a status of FAILED
, along with steps to remedy \n and retry the operation.
The export specification consists of the destination \n S3 bucket to which the search results were exported, along \n with the destination prefix.
" + } + }, + "SearchJobArn": { + "target": "com.amazonaws.backupsearch#SearchJobArn", + "traits": { + "smithy.api#documentation": "The unique string that identifies the Amazon Resource \n Name (ARN) of the specified search job.
" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.backupsearch#IamRoleArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 20, + "max": 2048 + }, + "smithy.api#pattern": "^arn:(?:aws|aws-cn|aws-us-gov):iam::[a-z0-9-]+:role/(.+)$" + } + }, + "com.amazonaws.backupsearch#InternalServerException": { + "type": "structure", + "members": { + "message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "Unexpected error during processing of request.
", + "smithy.api#required": {} + } + }, + "retryAfterSeconds": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "Retry the call after number of seconds.
", + "smithy.api#httpHeader": "Retry-After" + } + } + }, + "traits": { + "smithy.api#documentation": "An internal server error occurred. Retry your request.
", + "smithy.api#error": "server", + "smithy.api#httpError": 500, + "smithy.api#retryable": {} + } + }, + "com.amazonaws.backupsearch#ItemFilters": { + "type": "structure", + "members": { + "S3ItemFilters": { + "target": "com.amazonaws.backupsearch#S3ItemFilters", + "traits": { + "smithy.api#documentation": "This array can contain CreationTimes, ETags, \n ObjectKeys, Sizes, or VersionIds objects.
" + } + }, + "EBSItemFilters": { + "target": "com.amazonaws.backupsearch#EBSItemFilters", + "traits": { + "smithy.api#documentation": "This array can contain CreationTimes, \n FilePaths, LastModificationTimes, or Sizes objects.
" + } + } + }, + "traits": { + "smithy.api#documentation": "Item Filters represent all input item \n properties specified when the search was \n created.
\nContains either EBSItemFilters or \n S3ItemFilters
" + } + }, + "com.amazonaws.backupsearch#ListSearchJobBackups": { + "type": "operation", + "input": { + "target": "com.amazonaws.backupsearch#ListSearchJobBackupsInput" + }, + "output": { + "target": "com.amazonaws.backupsearch#ListSearchJobBackupsOutput" + }, + "errors": [ + { + "target": "com.amazonaws.backupsearch#ResourceNotFoundException" + } + ], + "traits": { + "smithy.api#documentation": "This operation returns a list of all backups (recovery \n points) in a paginated format that were included in \n the search job.
\nIf a search does not display an expected backup in \n the results, you can call this operation to display each \n backup included in the search. Any backups that were not \n included because they have a FAILED
status \n from a permissions issue will be displayed, along with a \n status message.
Only recovery points with a backup index that has \n a status of ACTIVE
will be included in search results. \n If the index has any other status, its status will be \n displayed along with a status message.
The unique string that specifies the search job.
", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "The next item following a partial list of returned backups \n included in a search job.
\nFor example, if a request\n is made to return MaxResults
number of backups, NextToken
\n allows you to return more items in your list starting at the location pointed to by the\n next token.
The maximum number of resource list items to be returned.
", + "smithy.api#httpQuery": "maxResults", + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.backupsearch#ListSearchJobBackupsOutput": { + "type": "structure", + "members": { + "Results": { + "target": "com.amazonaws.backupsearch#SearchJobBackupsResults", + "traits": { + "smithy.api#documentation": "The recovery points returned the results of a \n search job
", + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "The next item following a partial list of returned backups \n included in a search job.
\nFor example, if a request\n is made to return MaxResults
number of backups, NextToken
\n allows you to return more items in your list starting at the location pointed to by the\n next token.
This operation returns a list of a specified search job.
", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/search-jobs/{SearchJobIdentifier}/search-results" + }, + "smithy.api#paginated": { + "items": "Results" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.backupsearch#ListSearchJobResultsInput": { + "type": "structure", + "members": { + "SearchJobIdentifier": { + "target": "com.amazonaws.backupsearch#GenericId", + "traits": { + "smithy.api#documentation": "The unique string that specifies the search job.
", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "The next item following a partial list of returned \n search job results.
\nFor example, if a request\n is made to return MaxResults
number of \n search job results, NextToken
\n allows you to return more items in your list starting at the location pointed to by the\n next token.
The maximum number of resource list items to be returned.
", + "smithy.api#httpQuery": "maxResults", + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.backupsearch#ListSearchJobResultsOutput": { + "type": "structure", + "members": { + "Results": { + "target": "com.amazonaws.backupsearch#Results", + "traits": { + "smithy.api#documentation": "The results consist of either EBSResultItem or S3ResultItem.
", + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "The next item following a partial list of \n search job results.
\nFor example, if a request\n is made to return MaxResults
number of backups, NextToken
\n allows you to return more items in your list starting at the location pointed to by the\n next token.
This operation returns a list of search jobs belonging \n to an account.
", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/search-jobs" + }, + "smithy.api#paginated": { + "items": "SearchJobs" + }, + "smithy.api#readonly": {}, + "smithy.test#smokeTests": [ + { + "id": "ListSearchJobsSuccess", + "params": {}, + "expect": { + "success": {} + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-east-1" + } + } + ] + } + }, + "com.amazonaws.backupsearch#ListSearchJobsInput": { + "type": "structure", + "members": { + "ByStatus": { + "target": "com.amazonaws.backupsearch#SearchJobState", + "traits": { + "smithy.api#documentation": "Include this parameter to filter list by search \n job status.
", + "smithy.api#httpQuery": "Status", + "smithy.api#notProperty": {} + } + }, + "NextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "The next item following a partial list of returned \n search jobs.
\nFor example, if a request\n is made to return MaxResults
number of backups, NextToken
\n allows you to return more items in your list starting at the location pointed to by the\n next token.
The maximum number of resource list items to be returned.
", + "smithy.api#httpQuery": "MaxResults", + "smithy.api#notProperty": {}, + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.backupsearch#ListSearchJobsOutput": { + "type": "structure", + "members": { + "SearchJobs": { + "target": "com.amazonaws.backupsearch#SearchJobs", + "traits": { + "smithy.api#documentation": "The search jobs among the list, with details of \n the returned search jobs.
", + "smithy.api#notProperty": {}, + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "The next item following a partial list of returned backups \n included in a search job.
\nFor example, if a request\n is made to return MaxResults
number of backups, NextToken
\n allows you to return more items in your list starting at the location pointed to by the\n next token.
This operation exports search results of a search job \n to a specified destination S3 bucket.
", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/export-search-jobs" + }, + "smithy.api#paginated": { + "items": "ExportJobs" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.backupsearch#ListSearchResultExportJobsInput": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.backupsearch#ExportJobStatus", + "traits": { + "smithy.api#documentation": "The search jobs to be included in the export job \n can be filtered by including this parameter.
", + "smithy.api#httpQuery": "Status", + "smithy.api#notProperty": {} + } + }, + "SearchJobIdentifier": { + "target": "com.amazonaws.backupsearch#GenericId", + "traits": { + "smithy.api#documentation": "The unique string that specifies the search job.
", + "smithy.api#httpQuery": "SearchJobIdentifier", + "smithy.api#notProperty": {} + } + }, + "NextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "The next item following a partial list of returned backups \n included in a search job.
\nFor example, if a request\n is made to return MaxResults
number of backups, NextToken
\n allows you to return more items in your list starting at the location pointed to by the\n next token.
The maximum number of resource list items to be returned.
", + "smithy.api#httpQuery": "MaxResults", + "smithy.api#notProperty": {}, + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.backupsearch#ListSearchResultExportJobsOutput": { + "type": "structure", + "members": { + "ExportJobs": { + "target": "com.amazonaws.backupsearch#ExportJobSummaries", + "traits": { + "smithy.api#documentation": "The operation returns the included export jobs.
", + "smithy.api#notProperty": {}, + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "The next item following a partial list of returned backups \n included in a search job.
\nFor example, if a request\n is made to return MaxResults
number of backups, NextToken
\n allows you to return more items in your list starting at the location pointed to by the\n next token.
This operation returns the tags for a resource type.
", + "smithy.api#http": { + "uri": "/tags/{ResourceArn}", + "method": "GET" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.backupsearch#ListTagsForResourceRequest": { + "type": "structure", + "members": { + "ResourceArn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "The Amazon Resource Name (ARN) that uniquely identifies \n the resource.>
", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.backupsearch#ListTagsForResourceResponse": { + "type": "structure", + "members": { + "Tags": { + "target": "com.amazonaws.backupsearch#TagMap", + "traits": { + "smithy.api#documentation": "List of tags returned by the operation.
" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.backupsearch#LongCondition": { + "type": "structure", + "members": { + "Value": { + "target": "smithy.api#Long", + "traits": { + "smithy.api#documentation": "The value of an item included in one of the search \n item filters.
", + "smithy.api#required": {} + } + }, + "Operator": { + "target": "com.amazonaws.backupsearch#LongConditionOperator", + "traits": { + "smithy.api#default": "EQUALS_TO", + "smithy.api#documentation": "A string that defines what values will be \n returned.
\nIf this is included, avoid combinations of \n operators that will return all possible values. \n For example, including both EQUALS_TO
\n and NOT_EQUALS_TO
with a value of 4
\n will return all values.
The long condition contains a Value
\n and can optionally contain an Operator
.
Request references a resource which does not exist.
", + "smithy.api#required": {} + } + }, + "resourceId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "Hypothetical identifier of the resource affected.
", + "smithy.api#required": {} + } + }, + "resourceType": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "Hypothetical type of the resource affected.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "The resource was not found for this request.
\nConfirm the resource information, such as the ARN or type is correct \n and exists, then retry the request.
", + "smithy.api#error": "client", + "smithy.api#httpError": 404 + } + }, + "com.amazonaws.backupsearch#ResourceType": { + "type": "enum", + "members": { + "S3": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "S3" + } + }, + "EBS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EBS" + } + } + } + }, + "com.amazonaws.backupsearch#ResourceTypeList": { + "type": "list", + "member": { + "target": "com.amazonaws.backupsearch#ResourceType" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1 + } + } + }, + "com.amazonaws.backupsearch#ResultItem": { + "type": "union", + "members": { + "S3ResultItem": { + "target": "com.amazonaws.backupsearch#S3ResultItem", + "traits": { + "smithy.api#documentation": "These are items returned in the search results \n of an Amazon S3 search.
" + } + }, + "EBSResultItem": { + "target": "com.amazonaws.backupsearch#EBSResultItem", + "traits": { + "smithy.api#documentation": "These are items returned in the search results \n of an Amazon EBS search.
" + } + } + }, + "traits": { + "smithy.api#documentation": "This is an object representing the item \n returned in the results of a search for a specific \n resource type.
" + } + }, + "com.amazonaws.backupsearch#Results": { + "type": "list", + "member": { + "target": "com.amazonaws.backupsearch#ResultItem" + } + }, + "com.amazonaws.backupsearch#S3ExportSpecification": { + "type": "structure", + "members": { + "DestinationBucket": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "This specifies the destination Amazon S3 \n bucket for the export job.
", + "smithy.api#required": {} + } + }, + "DestinationPrefix": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "This specifies the prefix for the destination \n Amazon S3 bucket for the export job.
" + } + } + }, + "traits": { + "smithy.api#documentation": "This specification contains a required string of the \n destination bucket; optionally, you can include the \n destination prefix.
" + } + }, + "com.amazonaws.backupsearch#S3ItemFilter": { + "type": "structure", + "members": { + "ObjectKeys": { + "target": "com.amazonaws.backupsearch#StringConditionList", + "traits": { + "smithy.api#documentation": "You can include 1 to 10 values.
\nIf one value is included, the results will \n return only items that match the value.
\nIf more than one value is included, the \n results will return all items that match any of the \n values.
" + } + }, + "Sizes": { + "target": "com.amazonaws.backupsearch#LongConditionList", + "traits": { + "smithy.api#documentation": "You can include 1 to 10 values.
\nIf one value is included, the results will \n return only items that match the value.
\nIf more than one value is included, the \n results will return all items that match any of the \n values.
" + } + }, + "CreationTimes": { + "target": "com.amazonaws.backupsearch#TimeConditionList", + "traits": { + "smithy.api#documentation": "You can include 1 to 10 values.
\nIf one value is included, the results will \n return only items that match the value.
\nIf more than one value is included, the \n results will return all items that match any of the \n values.
" + } + }, + "VersionIds": { + "target": "com.amazonaws.backupsearch#StringConditionList", + "traits": { + "smithy.api#documentation": "You can include 1 to 10 values.
\nIf one value is included, the results will \n return only items that match the value.
\nIf more than one value is included, the \n results will return all items that match any of the \n values.
" + } + }, + "ETags": { + "target": "com.amazonaws.backupsearch#StringConditionList", + "traits": { + "smithy.api#documentation": "You can include 1 to 10 values.
\nIf one value is included, the results will \n return only items that match the value.
\nIf more than one value is included, the \n results will return all items that match any of the \n values.
" + } + } + }, + "traits": { + "smithy.api#documentation": "This contains arrays of objects, which may include \n ObjectKeys, Sizes, CreationTimes, VersionIds, and/or \n Etags.
" + } + }, + "com.amazonaws.backupsearch#S3ItemFilters": { + "type": "list", + "member": { + "target": "com.amazonaws.backupsearch#S3ItemFilter" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 10 + } + } + }, + "com.amazonaws.backupsearch#S3ResultItem": { + "type": "structure", + "members": { + "BackupResourceArn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "These are items in the returned results that match \n recovery point Amazon Resource Names (ARN) input during \n a search of Amazon S3 backup metadata.
" + } + }, + "SourceResourceArn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "These are items in the returned results that match \n source Amazon Resource Names (ARN) input during \n a search of Amazon S3 backup metadata.
" + } + }, + "BackupVaultName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "The name of the backup vault.
" + } + }, + "ObjectKey": { + "target": "com.amazonaws.backupsearch#ObjectKey", + "traits": { + "smithy.api#documentation": "This is one or more items \n returned in the results of a search of Amazon S3 \n backup metadata that match the values input for \n object key.
" + } + }, + "ObjectSize": { + "target": "smithy.api#Long", + "traits": { + "smithy.api#documentation": "These are items in the returned results that match \n values for object size(s) input during a search of \n Amazon S3 backup metadata.
" + } + }, + "CreationTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "These are one or more items in the returned results \n that match values for item creation time input during \n a search of Amazon S3 backup metadata.
" + } + }, + "ETag": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "These are one or more items in the returned results \n that match values for ETags input during \n a search of Amazon S3 backup metadata.
" + } + }, + "VersionId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "These are one or more items in the returned results \n that match values for version IDs input during \n a search of Amazon S3 backup metadata.
" + } + } + }, + "traits": { + "smithy.api#documentation": "These are the items returned in the results of \n a search of Amazon S3 backup metadata.
" + } + }, + "com.amazonaws.backupsearch#SearchJob": { + "type": "resource", + "identifiers": { + "SearchJobIdentifier": { + "target": "com.amazonaws.backupsearch#GenericId" + } + }, + "properties": { + "Status": { + "target": "com.amazonaws.backupsearch#SearchJobState" + }, + "Name": { + "target": "smithy.api#String" + }, + "EncryptionKeyArn": { + "target": "com.amazonaws.backupsearch#EncryptionKeyArn" + }, + "SearchScope": { + "target": "com.amazonaws.backupsearch#SearchScope" + }, + "ItemFilters": { + "target": "com.amazonaws.backupsearch#ItemFilters" + }, + "CreationTime": { + "target": "smithy.api#Timestamp" + }, + "CompletionTime": { + "target": "smithy.api#Timestamp" + }, + "SearchScopeSummary": { + "target": "com.amazonaws.backupsearch#SearchScopeSummary" + }, + "CurrentSearchProgress": { + "target": "com.amazonaws.backupsearch#CurrentSearchProgress" + }, + "StatusMessage": { + "target": "smithy.api#String" + }, + "ClientToken": { + "target": "smithy.api#String" + }, + "Tags": { + "target": "com.amazonaws.backupsearch#TagMap" + }, + "SearchJobArn": { + "target": "com.amazonaws.backupsearch#SearchJobArn" + } + }, + "create": { + "target": "com.amazonaws.backupsearch#StartSearchJob" + }, + "read": { + "target": "com.amazonaws.backupsearch#GetSearchJob" + }, + "update": { + "target": "com.amazonaws.backupsearch#StopSearchJob" + }, + "list": { + "target": "com.amazonaws.backupsearch#ListSearchJobs" + } + }, + "com.amazonaws.backupsearch#SearchJobArn": { + "type": "string", + "traits": { + "aws.api#arnReference": { + "service": "com.amazonaws.backupsearch#CryoBackupSearchService" + } + } + }, + "com.amazonaws.backupsearch#SearchJobBackupsResult": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.backupsearch#SearchJobState", + "traits": { + "smithy.api#documentation": "This is the status of the search job backup result.
" + } + }, + "StatusMessage": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "This is the status message included with the results.
" + } + }, + "ResourceType": { + "target": "com.amazonaws.backupsearch#ResourceType", + "traits": { + "smithy.api#documentation": "This is the resource type of the search.
" + } + }, + "BackupResourceArn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "The Amazon Resource Name (ARN) that uniquely identifies \n the backup resources.
" + } + }, + "SourceResourceArn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "The Amazon Resource Name (ARN) that uniquely identifies \n the source resources.
" + } + }, + "IndexCreationTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "This is the creation time of the backup index.
" + } + }, + "BackupCreationTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "This is the creation time of the backup (recovery point).
" + } + } + }, + "traits": { + "smithy.api#documentation": "This contains the information about recovery \n points returned in results of a search job.
" + } + }, + "com.amazonaws.backupsearch#SearchJobBackupsResults": { + "type": "list", + "member": { + "target": "com.amazonaws.backupsearch#SearchJobBackupsResult" + } + }, + "com.amazonaws.backupsearch#SearchJobState": { + "type": "enum", + "members": { + "RUNNING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RUNNING" + } + }, + "COMPLETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPLETED" + } + }, + "STOPPING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STOPPING" + } + }, + "STOPPED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STOPPED" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FAILED" + } + } + } + }, + "com.amazonaws.backupsearch#SearchJobSummary": { + "type": "structure", + "members": { + "SearchJobIdentifier": { + "target": "com.amazonaws.backupsearch#GenericId", + "traits": { + "smithy.api#documentation": "The unique string that specifies the search job.
" + } + }, + "SearchJobArn": { + "target": "com.amazonaws.backupsearch#SearchJobArn", + "traits": { + "smithy.api#documentation": "The unique string that identifies the Amazon Resource \n Name (ARN) of the specified search job.
" + } + }, + "Name": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "This is the name of the search job.
" + } + }, + "Status": { + "target": "com.amazonaws.backupsearch#SearchJobState", + "traits": { + "smithy.api#documentation": "This is the status of the search job.
" + } + }, + "CreationTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "This is the creation time of the search job.
" + } + }, + "CompletionTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "This is the completion time of the search job.
" + } + }, + "SearchScopeSummary": { + "target": "com.amazonaws.backupsearch#SearchScopeSummary", + "traits": { + "smithy.api#documentation": "Returned summary of the specified search job scope, \n including:\n
\nTotalBackupsToScanCount, the number of \n recovery points returned by the search.
\nTotalItemsToScanCount, the number of \n items returned by the search.
\nA status message will be returned for either a \n earch job with a status of ERRORED
or a status of \n COMPLETED
jobs with issues.
For example, a message may say that a search \n contained recovery points unable to be scanned because \n of a permissions issue.
" + } + } + }, + "traits": { + "smithy.api#documentation": "This is information pertaining to a search job.
" + } + }, + "com.amazonaws.backupsearch#SearchJobs": { + "type": "list", + "member": { + "target": "com.amazonaws.backupsearch#SearchJobSummary" + } + }, + "com.amazonaws.backupsearch#SearchResultExportJob": { + "type": "resource", + "identifiers": { + "ExportJobIdentifier": { + "target": "com.amazonaws.backupsearch#GenericId" + } + }, + "properties": { + "ExportJobArn": { + "target": "com.amazonaws.backupsearch#ExportJobArn" + }, + "SearchJobIdentifier": { + "target": "com.amazonaws.backupsearch#GenericId" + }, + "SearchJobArn": { + "target": "com.amazonaws.backupsearch#SearchJobArn" + }, + "Status": { + "target": "com.amazonaws.backupsearch#ExportJobStatus" + }, + "StatusMessage": { + "target": "smithy.api#String" + }, + "CreationTime": { + "target": "smithy.api#Timestamp" + }, + "CompletionTime": { + "target": "smithy.api#Timestamp" + }, + "ExportSpecification": { + "target": "com.amazonaws.backupsearch#ExportSpecification" + }, + "ClientToken": { + "target": "smithy.api#String" + }, + "Tags": { + "target": "com.amazonaws.backupsearch#TagMap" + }, + "RoleArn": { + "target": "com.amazonaws.backupsearch#IamRoleArn" + } + }, + "create": { + "target": "com.amazonaws.backupsearch#StartSearchResultExportJob" + }, + "read": { + "target": "com.amazonaws.backupsearch#GetSearchResultExportJob" + }, + "list": { + "target": "com.amazonaws.backupsearch#ListSearchResultExportJobs" + } + }, + "com.amazonaws.backupsearch#SearchScope": { + "type": "structure", + "members": { + "BackupResourceTypes": { + "target": "com.amazonaws.backupsearch#ResourceTypeList", + "traits": { + "smithy.api#documentation": "The resource types included in a search.
\nEligible resource types include S3 and EBS.
", + "smithy.api#required": {} + } + }, + "BackupResourceCreationTime": { + "target": "com.amazonaws.backupsearch#BackupCreationTimeFilter", + "traits": { + "smithy.api#documentation": "This is the time a backup resource was created.
" + } + }, + "SourceResourceArns": { + "target": "com.amazonaws.backupsearch#ResourceArnList", + "traits": { + "smithy.api#documentation": "The Amazon Resource Name (ARN) that uniquely identifies \n the source resources.
" + } + }, + "BackupResourceArns": { + "target": "com.amazonaws.backupsearch#RecoveryPointArnList", + "traits": { + "smithy.api#documentation": "The Amazon Resource Name (ARN) that uniquely identifies \n the backup resources.
" + } + }, + "BackupResourceTags": { + "target": "com.amazonaws.backupsearch#TagMap", + "traits": { + "smithy.api#documentation": "These are one or more tags on the backup (recovery \n point).
" + } + } + }, + "traits": { + "smithy.api#documentation": "The search scope is all backup \n properties input into a search.
" + } + }, + "com.amazonaws.backupsearch#SearchScopeSummary": { + "type": "structure", + "members": { + "TotalRecoveryPointsToScanCount": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "This is the count of the total number of backups \n that will be scanned in a search.
" + } + }, + "TotalItemsToScanCount": { + "target": "smithy.api#Long", + "traits": { + "smithy.api#documentation": "This is the count of the total number of items \n that will be scanned in a search.
" + } + } + }, + "traits": { + "smithy.api#documentation": "The summary of the specified search job scope, \n including:\n
\nTotalBackupsToScanCount, the number of \n recovery points returned by the search.
\nTotalItemsToScanCount, the number of \n items returned by the search.
\nThis request was not successful due to a service quota exceeding limits.
", + "smithy.api#required": {} + } + }, + "resourceId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "Identifier of the resource.
", + "smithy.api#required": {} + } + }, + "resourceType": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "Type of resource.
", + "smithy.api#required": {} + } + }, + "serviceCode": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "This is the code unique to the originating service with the quota.
", + "smithy.api#required": {} + } + }, + "quotaCode": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "This is the code specific to the quota type.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "The request denied due to exceeding the quota limits permitted.
", + "smithy.api#error": "client", + "smithy.api#httpError": 402 + } + }, + "com.amazonaws.backupsearch#StartSearchJob": { + "type": "operation", + "input": { + "target": "com.amazonaws.backupsearch#StartSearchJobInput" + }, + "output": { + "target": "com.amazonaws.backupsearch#StartSearchJobOutput" + }, + "errors": [ + { + "target": "com.amazonaws.backupsearch#ConflictException" + }, + { + "target": "com.amazonaws.backupsearch#ServiceQuotaExceededException" + } + ], + "traits": { + "smithy.api#documentation": "This operation creates a search job which returns \n recovery points filtered by SearchScope and items \n filtered by ItemFilters.
\nYou can optionally include ClientToken, \n EncryptionKeyArn, Name, and/or Tags.
", + "smithy.api#http": { + "code": 200, + "method": "PUT", + "uri": "/search-jobs" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.backupsearch#StartSearchJobInput": { + "type": "structure", + "members": { + "Tags": { + "target": "com.amazonaws.backupsearch#TagMap", + "traits": { + "smithy.api#documentation": "List of tags returned by the operation.
" + } + }, + "Name": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "Include alphanumeric characters to create a \n name for this search job.
", + "smithy.api#length": { + "max": 500 + } + } + }, + "EncryptionKeyArn": { + "target": "com.amazonaws.backupsearch#EncryptionKeyArn", + "traits": { + "smithy.api#documentation": "The encryption key for the specified \n search job.
" + } + }, + "ClientToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "Include this parameter to allow multiple identical \n calls for idempotency.
\nA client token is valid for 8 hours after the first \n request that uses it is completed. After this time,\n any request with the same token is treated as a \n new request.
" + } + }, + "SearchScope": { + "target": "com.amazonaws.backupsearch#SearchScope", + "traits": { + "smithy.api#documentation": "This object can contain BackupResourceTypes, \n BackupResourceArns, BackupResourceCreationTime, \n BackupResourceTags, and SourceResourceArns to \n filter the recovery points returned by the search \n job.
", + "smithy.api#required": {} + } + }, + "ItemFilters": { + "target": "com.amazonaws.backupsearch#ItemFilters", + "traits": { + "smithy.api#documentation": "Item Filters represent all input item \n properties specified when the search was \n created.
\nContains either EBSItemFilters or \n S3ItemFilters
" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.backupsearch#StartSearchJobOutput": { + "type": "structure", + "members": { + "SearchJobArn": { + "target": "com.amazonaws.backupsearch#SearchJobArn", + "traits": { + "smithy.api#documentation": "The unique string that identifies the Amazon Resource \n Name (ARN) of the specified search job.
" + } + }, + "CreationTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "The date and time that a job was created, in Unix format and Coordinated\n Universal Time (UTC). The value of CompletionTime
is accurate to milliseconds.\n For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087\n AM.
The unique string that specifies the search job.
", + "smithy.api#notProperty": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.backupsearch#StartSearchResultExportJob": { + "type": "operation", + "input": { + "target": "com.amazonaws.backupsearch#StartSearchResultExportJobInput" + }, + "output": { + "target": "com.amazonaws.backupsearch#StartSearchResultExportJobOutput" + }, + "errors": [ + { + "target": "com.amazonaws.backupsearch#ConflictException" + }, + { + "target": "com.amazonaws.backupsearch#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.backupsearch#ServiceQuotaExceededException" + } + ], + "traits": { + "smithy.api#documentation": "This operations starts a job to export the results \n of search job to a designated S3 bucket.
", + "smithy.api#http": { + "code": 200, + "method": "PUT", + "uri": "/export-search-jobs" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.backupsearch#StartSearchResultExportJobInput": { + "type": "structure", + "members": { + "SearchJobIdentifier": { + "target": "com.amazonaws.backupsearch#GenericId", + "traits": { + "smithy.api#documentation": "The unique string that specifies the search job.
", + "smithy.api#required": {} + } + }, + "ExportSpecification": { + "target": "com.amazonaws.backupsearch#ExportSpecification", + "traits": { + "smithy.api#documentation": "This specification contains a required string of the \n destination bucket; optionally, you can include the \n destination prefix.
", + "smithy.api#required": {} + } + }, + "ClientToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "Include this parameter to allow multiple identical \n calls for idempotency.
\nA client token is valid for 8 hours after the first \n request that uses it is completed. After this time,\n any request with the same token is treated as a \n new request.
" + } + }, + "Tags": { + "target": "com.amazonaws.backupsearch#TagMap", + "traits": { + "smithy.api#documentation": "Optional tags to include. A tag is a key-value pair you can use to manage, \n filter, and search for your resources. Allowed characters include UTF-8 letters, \n numbers, spaces, and the following characters: + - = . _ : /.
" + } + }, + "RoleArn": { + "target": "com.amazonaws.backupsearch#IamRoleArn", + "traits": { + "smithy.api#documentation": "This parameter specifies the role ARN used to start \n the search results export jobs.
" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.backupsearch#StartSearchResultExportJobOutput": { + "type": "structure", + "members": { + "ExportJobArn": { + "target": "com.amazonaws.backupsearch#ExportJobArn", + "traits": { + "smithy.api#documentation": "This is the unique ARN (Amazon Resource Name) that \n belongs to the new export job.
" + } + }, + "ExportJobIdentifier": { + "target": "com.amazonaws.backupsearch#GenericId", + "traits": { + "smithy.api#documentation": "This is the unique identifier that \n specifies the new export job.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.backupsearch#StopSearchJob": { + "type": "operation", + "input": { + "target": "com.amazonaws.backupsearch#StopSearchJobInput" + }, + "output": { + "target": "com.amazonaws.backupsearch#StopSearchJobOutput" + }, + "errors": [ + { + "target": "com.amazonaws.backupsearch#ConflictException" + }, + { + "target": "com.amazonaws.backupsearch#ResourceNotFoundException" + } + ], + "traits": { + "smithy.api#documentation": "This operations ends a search job.
\nOnly a search job with a status of RUNNING
\n can be stopped.
The unique string that specifies the search job.
", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.backupsearch#StopSearchJobOutput": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.backupsearch#StringCondition": { + "type": "structure", + "members": { + "Value": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "The value of the string.
", + "smithy.api#required": {} + } + }, + "Operator": { + "target": "com.amazonaws.backupsearch#StringConditionOperator", + "traits": { + "smithy.api#default": "EQUALS_TO", + "smithy.api#documentation": "A string that defines what values will be \n returned.
\nIf this is included, avoid combinations of \n operators that will return all possible values. \n For example, including both EQUALS_TO
\n and NOT_EQUALS_TO
with a value of 4
\n will return all values.
This contains the value of the string and can contain \n one or more operators.
" + } + }, + "com.amazonaws.backupsearch#StringConditionList": { + "type": "list", + "member": { + "target": "com.amazonaws.backupsearch#StringCondition" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10 + } + } + }, + "com.amazonaws.backupsearch#StringConditionOperator": { + "type": "enum", + "members": { + "EQUALS_TO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EQUALS_TO" + } + }, + "NOT_EQUALS_TO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NOT_EQUALS_TO" + } + }, + "CONTAINS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CONTAINS" + } + }, + "DOES_NOT_CONTAIN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DOES_NOT_CONTAIN" + } + }, + "BEGINS_WITH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BEGINS_WITH" + } + }, + "ENDS_WITH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ENDS_WITH" + } + }, + "DOES_NOT_BEGIN_WITH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DOES_NOT_BEGIN_WITH" + } + }, + "DOES_NOT_END_WITH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DOES_NOT_END_WITH" + } + } + } + }, + "com.amazonaws.backupsearch#TagKeys": { + "type": "list", + "member": { + "target": "smithy.api#String" + } + }, + "com.amazonaws.backupsearch#TagMap": { + "type": "map", + "key": { + "target": "smithy.api#String" + }, + "value": { + "target": "smithy.api#String" + }, + "traits": { + "smithy.api#sparse": {} + } + }, + "com.amazonaws.backupsearch#TagResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.backupsearch#TagResourceRequest" + }, + "output": { + "target": "com.amazonaws.backupsearch#TagResourceResponse" + }, + "errors": [ + { + "target": "com.amazonaws.backupsearch#ResourceNotFoundException" + } + ], + "traits": { + "smithy.api#documentation": "This operation puts tags on the resource you indicate.
", + "smithy.api#http": { + "uri": "/tags/{ResourceArn}", + "method": "POST" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.backupsearch#TagResourceRequest": { + "type": "structure", + "members": { + "ResourceArn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "The Amazon Resource Name (ARN) that uniquely identifies \n the resource.
\nThis is the resource that will have the indicated tags.
", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Tags": { + "target": "com.amazonaws.backupsearch#TagMap", + "traits": { + "smithy.api#documentation": "Required tags to include. A tag is a key-value pair you can use to manage, \n filter, and search for your resources. Allowed characters include UTF-8 letters, \n numbers, spaces, and the following characters: + - = . _ : /.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.backupsearch#TagResourceResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.backupsearch#ThrottlingException": { + "type": "structure", + "members": { + "message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "Request was unsuccessful due to request throttling.
", + "smithy.api#required": {} + } + }, + "serviceCode": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "This is the code unique to the originating service.
" + } + }, + "quotaCode": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "This is the code unique to the originating service with the quota.
" + } + }, + "retryAfterSeconds": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "Retry the call after number of seconds.
", + "smithy.api#httpHeader": "Retry-After" + } + } + }, + "traits": { + "smithy.api#documentation": "The request was denied due to request throttling.
", + "smithy.api#error": "client", + "smithy.api#httpError": 429, + "smithy.api#retryable": { + "throttling": true + } + } + }, + "com.amazonaws.backupsearch#TimeCondition": { + "type": "structure", + "members": { + "Value": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "This is the timestamp value of the time condition.
", + "smithy.api#required": {} + } + }, + "Operator": { + "target": "com.amazonaws.backupsearch#TimeConditionOperator", + "traits": { + "smithy.api#default": "EQUALS_TO", + "smithy.api#documentation": "A string that defines what values will be \n returned.
\nIf this is included, avoid combinations of \n operators that will return all possible values. \n For example, including both EQUALS_TO
\n and NOT_EQUALS_TO
with a value of 4
\n will return all values.
A time condition denotes a creation time, last modification time, \n or other time.
" + } + }, + "com.amazonaws.backupsearch#TimeConditionList": { + "type": "list", + "member": { + "target": "com.amazonaws.backupsearch#TimeCondition" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10 + } + } + }, + "com.amazonaws.backupsearch#TimeConditionOperator": { + "type": "enum", + "members": { + "EQUALS_TO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EQUALS_TO" + } + }, + "NOT_EQUALS_TO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NOT_EQUALS_TO" + } + }, + "LESS_THAN_EQUAL_TO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LESS_THAN_EQUAL_TO" + } + }, + "GREATER_THAN_EQUAL_TO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GREATER_THAN_EQUAL_TO" + } + } + } + }, + "com.amazonaws.backupsearch#UntagResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.backupsearch#UntagResourceRequest" + }, + "output": { + "target": "com.amazonaws.backupsearch#UntagResourceResponse" + }, + "errors": [ + { + "target": "com.amazonaws.backupsearch#ResourceNotFoundException" + } + ], + "traits": { + "smithy.api#documentation": "This operation removes tags from the specified resource.
", + "smithy.api#http": { + "uri": "/tags/{ResourceArn}", + "method": "DELETE" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.backupsearch#UntagResourceRequest": { + "type": "structure", + "members": { + "ResourceArn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "The Amazon Resource Name (ARN) that uniquely identifies \n the resource where you want to remove tags.
", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "TagKeys": { + "target": "com.amazonaws.backupsearch#TagKeys", + "traits": { + "smithy.api#documentation": "This required parameter contains the tag keys you \n want to remove from the source.
", + "smithy.api#httpQuery": "tagKeys", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.backupsearch#UntagResourceResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.backupsearch#ValidationException": { + "type": "structure", + "members": { + "message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "The input fails to satisfy the constraints specified by an Amazon service.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "The input fails to satisfy the constraints specified by a service.
", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + } + } +}