From 71f373db6be51dbc2833da4c9222882590762036 Mon Sep 17 00:00:00 2001 From: awstools Date: Thu, 1 Aug 2024 18:21:51 +0000 Subject: [PATCH] feat(client-ssm-quicksetup): This release adds API support for the QuickSetup feature of AWS Systems Manager --- clients/client-ssm-quicksetup/.gitignore | 9 + clients/client-ssm-quicksetup/LICENSE | 201 ++ clients/client-ssm-quicksetup/README.md | 303 +++ .../client-ssm-quicksetup/api-extractor.json | 4 + clients/client-ssm-quicksetup/package.json | 101 + .../src/SSMQuickSetup.ts | 283 +++ .../src/SSMQuickSetupClient.ts | 366 +++ .../auth/httpAuthExtensionConfiguration.ts | 72 + .../src/auth/httpAuthSchemeProvider.ts | 138 + .../CreateConfigurationManagerCommand.ts | 119 + .../DeleteConfigurationManagerCommand.ts | 99 + .../GetConfigurationManagerCommand.ts | 135 + .../src/commands/GetServiceSettingsCommand.ts | 94 + .../ListConfigurationManagersCommand.ts | 135 + .../commands/ListQuickSetupTypesCommand.ts | 97 + .../commands/ListTagsForResourceCommand.ts | 110 + .../src/commands/TagResourceCommand.ts | 102 + .../src/commands/UntagResourceCommand.ts | 102 + .../UpdateConfigurationDefinitionCommand.ts | 109 + .../UpdateConfigurationManagerCommand.ts | 101 + .../commands/UpdateServiceSettingsCommand.ts | 96 + .../src/commands/index.ts | 13 + .../src/endpoint/EndpointParameters.ts | 41 + .../src/endpoint/endpointResolver.ts | 19 + .../src/endpoint/ruleset.ts | 32 + .../src/extensionConfiguration.ts | 15 + clients/client-ssm-quicksetup/src/index.ts | 19 + .../models/SSMQuickSetupServiceException.ts | 24 + .../client-ssm-quicksetup/src/models/index.ts | 2 + .../src/models/models_0.ts | 2163 ++++++++++++++++ .../src/pagination/Interfaces.ts | 11 + .../ListConfigurationManagersPaginator.ts | 24 + .../src/pagination/index.ts | 3 + .../src/protocols/Aws_restJson1.ts | 817 ++++++ .../src/runtimeConfig.browser.ts | 44 + .../src/runtimeConfig.native.ts | 18 + .../src/runtimeConfig.shared.ts | 38 + .../src/runtimeConfig.ts | 59 + .../src/runtimeExtensions.ts | 48 + .../client-ssm-quicksetup/tsconfig.cjs.json | 6 + .../client-ssm-quicksetup/tsconfig.es.json | 8 + clients/client-ssm-quicksetup/tsconfig.json | 13 + .../client-ssm-quicksetup/tsconfig.types.json | 10 + .../aws-models/ssm-quicksetup.json | 2218 +++++++++++++++++ 44 files changed, 8421 insertions(+) create mode 100644 clients/client-ssm-quicksetup/.gitignore create mode 100644 clients/client-ssm-quicksetup/LICENSE create mode 100644 clients/client-ssm-quicksetup/README.md create mode 100644 clients/client-ssm-quicksetup/api-extractor.json create mode 100644 clients/client-ssm-quicksetup/package.json create mode 100644 clients/client-ssm-quicksetup/src/SSMQuickSetup.ts create mode 100644 clients/client-ssm-quicksetup/src/SSMQuickSetupClient.ts create mode 100644 clients/client-ssm-quicksetup/src/auth/httpAuthExtensionConfiguration.ts create mode 100644 clients/client-ssm-quicksetup/src/auth/httpAuthSchemeProvider.ts create mode 100644 clients/client-ssm-quicksetup/src/commands/CreateConfigurationManagerCommand.ts create mode 100644 clients/client-ssm-quicksetup/src/commands/DeleteConfigurationManagerCommand.ts create mode 100644 clients/client-ssm-quicksetup/src/commands/GetConfigurationManagerCommand.ts create mode 100644 clients/client-ssm-quicksetup/src/commands/GetServiceSettingsCommand.ts create mode 100644 clients/client-ssm-quicksetup/src/commands/ListConfigurationManagersCommand.ts create mode 100644 clients/client-ssm-quicksetup/src/commands/ListQuickSetupTypesCommand.ts create mode 100644 clients/client-ssm-quicksetup/src/commands/ListTagsForResourceCommand.ts create mode 100644 clients/client-ssm-quicksetup/src/commands/TagResourceCommand.ts create mode 100644 clients/client-ssm-quicksetup/src/commands/UntagResourceCommand.ts create mode 100644 clients/client-ssm-quicksetup/src/commands/UpdateConfigurationDefinitionCommand.ts create mode 100644 clients/client-ssm-quicksetup/src/commands/UpdateConfigurationManagerCommand.ts create mode 100644 clients/client-ssm-quicksetup/src/commands/UpdateServiceSettingsCommand.ts create mode 100644 clients/client-ssm-quicksetup/src/commands/index.ts create mode 100644 clients/client-ssm-quicksetup/src/endpoint/EndpointParameters.ts create mode 100644 clients/client-ssm-quicksetup/src/endpoint/endpointResolver.ts create mode 100644 clients/client-ssm-quicksetup/src/endpoint/ruleset.ts create mode 100644 clients/client-ssm-quicksetup/src/extensionConfiguration.ts create mode 100644 clients/client-ssm-quicksetup/src/index.ts create mode 100644 clients/client-ssm-quicksetup/src/models/SSMQuickSetupServiceException.ts create mode 100644 clients/client-ssm-quicksetup/src/models/index.ts create mode 100644 clients/client-ssm-quicksetup/src/models/models_0.ts create mode 100644 clients/client-ssm-quicksetup/src/pagination/Interfaces.ts create mode 100644 clients/client-ssm-quicksetup/src/pagination/ListConfigurationManagersPaginator.ts create mode 100644 clients/client-ssm-quicksetup/src/pagination/index.ts create mode 100644 clients/client-ssm-quicksetup/src/protocols/Aws_restJson1.ts create mode 100644 clients/client-ssm-quicksetup/src/runtimeConfig.browser.ts create mode 100644 clients/client-ssm-quicksetup/src/runtimeConfig.native.ts create mode 100644 clients/client-ssm-quicksetup/src/runtimeConfig.shared.ts create mode 100644 clients/client-ssm-quicksetup/src/runtimeConfig.ts create mode 100644 clients/client-ssm-quicksetup/src/runtimeExtensions.ts create mode 100644 clients/client-ssm-quicksetup/tsconfig.cjs.json create mode 100644 clients/client-ssm-quicksetup/tsconfig.es.json create mode 100644 clients/client-ssm-quicksetup/tsconfig.json create mode 100644 clients/client-ssm-quicksetup/tsconfig.types.json create mode 100644 codegen/sdk-codegen/aws-models/ssm-quicksetup.json diff --git a/clients/client-ssm-quicksetup/.gitignore b/clients/client-ssm-quicksetup/.gitignore new file mode 100644 index 000000000000..54f14c9aef25 --- /dev/null +++ b/clients/client-ssm-quicksetup/.gitignore @@ -0,0 +1,9 @@ +/node_modules/ +/build/ +/coverage/ +/docs/ +/dist-* +*.tsbuildinfo +*.tgz +*.log +package-lock.json diff --git a/clients/client-ssm-quicksetup/LICENSE b/clients/client-ssm-quicksetup/LICENSE new file mode 100644 index 000000000000..1349aa7c9923 --- /dev/null +++ b/clients/client-ssm-quicksetup/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-ssm-quicksetup/README.md b/clients/client-ssm-quicksetup/README.md new file mode 100644 index 000000000000..9c59c2bc0268 --- /dev/null +++ b/clients/client-ssm-quicksetup/README.md @@ -0,0 +1,303 @@ + + +# @aws-sdk/client-ssm-quicksetup + +## Description + +AWS SDK for JavaScript SSMQuickSetup Client for Node.js, Browser and React Native. + +

Quick Setup helps you quickly configure frequently used services and features with +recommended best practices. Quick Setup simplifies setting up services, including +Systems Manager, by automating common or recommended tasks.

+ +## Installing + +To install the this package, simply type add or install @aws-sdk/client-ssm-quicksetup +using your favorite package manager: + +- `npm install @aws-sdk/client-ssm-quicksetup` +- `yarn add @aws-sdk/client-ssm-quicksetup` +- `pnpm add @aws-sdk/client-ssm-quicksetup` + +## Getting Started + +### Import + +The AWS SDK is modulized by clients and commands. +To send a request, you only need to import the `SSMQuickSetupClient` and +the commands you need, for example `ListQuickSetupTypesCommand`: + +```js +// ES5 example +const { SSMQuickSetupClient, ListQuickSetupTypesCommand } = require("@aws-sdk/client-ssm-quicksetup"); +``` + +```ts +// ES6+ example +import { SSMQuickSetupClient, ListQuickSetupTypesCommand } from "@aws-sdk/client-ssm-quicksetup"; +``` + +### Usage + +To send a request, you: + +- Initiate client with configuration (e.g. credentials, region). +- Initiate command with input parameters. +- Call `send` operation on client with command object as input. +- If you are using a custom http handler, you may call `destroy()` to close open connections. + +```js +// a client can be shared by different commands. +const client = new SSMQuickSetupClient({ region: "REGION" }); + +const params = { + /** input parameters */ +}; +const command = new ListQuickSetupTypesCommand(params); +``` + +#### Async/await + +We recommend using [await](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/await) +operator to wait for the promise returned by send operation as follows: + +```js +// async/await. +try { + const data = await client.send(command); + // process data. +} catch (error) { + // error handling. +} finally { + // finally. +} +``` + +Async-await is clean, concise, intuitive, easy to debug and has better error handling +as compared to using Promise chains or callbacks. + +#### Promises + +You can also use [Promise chaining](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Using_promises#chaining) +to execute send operation. + +```js +client.send(command).then( + (data) => { + // process data. + }, + (error) => { + // error handling. + } +); +``` + +Promises can also be called using `.catch()` and `.finally()` as follows: + +```js +client + .send(command) + .then((data) => { + // process data. + }) + .catch((error) => { + // error handling. + }) + .finally(() => { + // finally. + }); +``` + +#### Callbacks + +We do not recommend using callbacks because of [callback hell](http://callbackhell.com/), +but they are supported by the send operation. + +```js +// callbacks. +client.send(command, (err, data) => { + // process err and data. +}); +``` + +#### v2 compatible style + +The client can also send requests using v2 compatible style. +However, it results in a bigger bundle size and may be dropped in next major version. More details in the blog post +on [modular packages in AWS SDK for JavaScript](https://aws.amazon.com/blogs/developer/modular-packages-in-aws-sdk-for-javascript/) + +```ts +import * as AWS from "@aws-sdk/client-ssm-quicksetup"; +const client = new AWS.SSMQuickSetup({ region: "REGION" }); + +// async/await. +try { + const data = await client.listQuickSetupTypes(params); + // process data. +} catch (error) { + // error handling. +} + +// Promises. +client + .listQuickSetupTypes(params) + .then((data) => { + // process data. + }) + .catch((error) => { + // error handling. + }); + +// callbacks. +client.listQuickSetupTypes(params, (err, data) => { + // process err and data. +}); +``` + +### Troubleshooting + +When the service returns an exception, the error will include the exception information, +as well as response metadata (e.g. request id). + +```js +try { + const data = await client.send(command); + // process data. +} catch (error) { + const { requestId, cfId, extendedRequestId } = error.$metadata; + console.log({ requestId, cfId, extendedRequestId }); + /** + * The keys within exceptions are also parsed. + * You can access them by specifying exception names: + * if (error.name === 'SomeServiceException') { + * const value = error.specialKeyInException; + * } + */ +} +``` + +## Getting Help + +Please use these community resources for getting help. +We use the GitHub issues for tracking bugs and feature requests, but have limited bandwidth to address them. + +- Visit [Developer Guide](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/welcome.html) + or [API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/index.html). +- Check out the blog posts tagged with [`aws-sdk-js`](https://aws.amazon.com/blogs/developer/tag/aws-sdk-js/) + on AWS Developer Blog. +- Ask a question on [StackOverflow](https://stackoverflow.com/questions/tagged/aws-sdk-js) and tag it with `aws-sdk-js`. +- Join the AWS JavaScript community on [gitter](https://gitter.im/aws/aws-sdk-js-v3). +- If it turns out that you may have found a bug, please [open an issue](https://github.com/aws/aws-sdk-js-v3/issues/new/choose). + +To test your universal JavaScript code in Node.js, browser and react-native environments, +visit our [code samples repo](https://github.com/aws-samples/aws-sdk-js-tests). + +## Contributing + +This client code is generated automatically. Any modifications will be overwritten the next time the `@aws-sdk/client-ssm-quicksetup` package is updated. +To contribute to client you can check our [generate clients scripts](https://github.com/aws/aws-sdk-js-v3/tree/main/scripts/generate-clients). + +## License + +This SDK is distributed under the +[Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0), +see LICENSE for more information. + +## Client Commands (Operations List) + +
+ +CreateConfigurationManager + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ssm-quicksetup/command/CreateConfigurationManagerCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/CreateConfigurationManagerCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/CreateConfigurationManagerCommandOutput/) + +
+
+ +DeleteConfigurationManager + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ssm-quicksetup/command/DeleteConfigurationManagerCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/DeleteConfigurationManagerCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/DeleteConfigurationManagerCommandOutput/) + +
+
+ +GetConfigurationManager + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ssm-quicksetup/command/GetConfigurationManagerCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/GetConfigurationManagerCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/GetConfigurationManagerCommandOutput/) + +
+
+ +GetServiceSettings + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ssm-quicksetup/command/GetServiceSettingsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/GetServiceSettingsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/GetServiceSettingsCommandOutput/) + +
+
+ +ListConfigurationManagers + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ssm-quicksetup/command/ListConfigurationManagersCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/ListConfigurationManagersCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/ListConfigurationManagersCommandOutput/) + +
+
+ +ListQuickSetupTypes + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ssm-quicksetup/command/ListQuickSetupTypesCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/ListQuickSetupTypesCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/ListQuickSetupTypesCommandOutput/) + +
+
+ +ListTagsForResource + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ssm-quicksetup/command/ListTagsForResourceCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/ListTagsForResourceCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/ListTagsForResourceCommandOutput/) + +
+
+ +TagResource + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ssm-quicksetup/command/TagResourceCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/TagResourceCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/TagResourceCommandOutput/) + +
+
+ +UntagResource + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ssm-quicksetup/command/UntagResourceCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/UntagResourceCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/UntagResourceCommandOutput/) + +
+
+ +UpdateConfigurationDefinition + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ssm-quicksetup/command/UpdateConfigurationDefinitionCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/UpdateConfigurationDefinitionCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/UpdateConfigurationDefinitionCommandOutput/) + +
+
+ +UpdateConfigurationManager + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ssm-quicksetup/command/UpdateConfigurationManagerCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/UpdateConfigurationManagerCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/UpdateConfigurationManagerCommandOutput/) + +
+
+ +UpdateServiceSettings + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ssm-quicksetup/command/UpdateServiceSettingsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/UpdateServiceSettingsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ssm-quicksetup/Interface/UpdateServiceSettingsCommandOutput/) + +
diff --git a/clients/client-ssm-quicksetup/api-extractor.json b/clients/client-ssm-quicksetup/api-extractor.json new file mode 100644 index 000000000000..d5bf5ffeee85 --- /dev/null +++ b/clients/client-ssm-quicksetup/api-extractor.json @@ -0,0 +1,4 @@ +{ + "extends": "../../api-extractor.json", + "mainEntryPointFilePath": "/dist-types/index.d.ts" +} diff --git a/clients/client-ssm-quicksetup/package.json b/clients/client-ssm-quicksetup/package.json new file mode 100644 index 000000000000..9cf0881ebf88 --- /dev/null +++ b/clients/client-ssm-quicksetup/package.json @@ -0,0 +1,101 @@ +{ + "name": "@aws-sdk/client-ssm-quicksetup", + "description": "AWS SDK for JavaScript Ssm Quicksetup Client for Node.js, Browser and React Native", + "version": "3.0.0", + "scripts": { + "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'", + "build:cjs": "tsc -p tsconfig.cjs.json", + "build:es": "tsc -p tsconfig.es.json", + "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build", + "build:types": "tsc -p tsconfig.types.json", + "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4", + "clean": "rimraf ./dist-* && rimraf *.tsbuildinfo || exit 0", + "extract:docs": "api-extractor run --local", + "generate:client": "node ../../scripts/generate-clients/single-service --solo ssm-quicksetup" + }, + "main": "./dist-cjs/index.js", + "types": "./dist-types/index.d.ts", + "module": "./dist-es/index.js", + "sideEffects": false, + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "*", + "@aws-sdk/client-sts": "*", + "@aws-sdk/core": "*", + "@aws-sdk/credential-provider-node": "*", + "@aws-sdk/middleware-host-header": "*", + "@aws-sdk/middleware-logger": "*", + "@aws-sdk/middleware-recursion-detection": "*", + "@aws-sdk/middleware-user-agent": "*", + "@aws-sdk/region-config-resolver": "*", + "@aws-sdk/types": "*", + "@aws-sdk/util-endpoints": "*", + "@aws-sdk/util-user-agent-browser": "*", + "@aws-sdk/util-user-agent-node": "*", + "@smithy/config-resolver": "^3.0.5", + "@smithy/core": "^2.3.2", + "@smithy/fetch-http-handler": "^3.2.4", + "@smithy/hash-node": "^3.0.3", + "@smithy/invalid-dependency": "^3.0.3", + "@smithy/middleware-content-length": "^3.0.5", + "@smithy/middleware-endpoint": "^3.1.0", + "@smithy/middleware-retry": "^3.0.14", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/node-config-provider": "^3.1.4", + "@smithy/node-http-handler": "^3.1.4", + "@smithy/protocol-http": "^4.1.0", + "@smithy/smithy-client": "^3.1.12", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.14", + "@smithy/util-defaults-mode-node": "^3.0.14", + "@smithy/util-endpoints": "^2.0.5", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "devDependencies": { + "@tsconfig/node16": "16.1.3", + "@types/node": "^16.18.96", + "concurrently": "7.0.0", + "downlevel-dts": "0.10.1", + "rimraf": "3.0.2", + "typescript": "~4.9.5" + }, + "engines": { + "node": ">=16.0.0" + }, + "typesVersions": { + "<4.0": { + "dist-types/*": [ + "dist-types/ts3.4/*" + ] + } + }, + "files": [ + "dist-*/**" + ], + "author": { + "name": "AWS SDK for JavaScript Team", + "url": "https://aws.amazon.com/javascript/" + }, + "license": "Apache-2.0", + "browser": { + "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser" + }, + "react-native": { + "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native" + }, + "homepage": "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-ssm-quicksetup", + "repository": { + "type": "git", + "url": "https://github.com/aws/aws-sdk-js-v3.git", + "directory": "clients/client-ssm-quicksetup" + } +} diff --git a/clients/client-ssm-quicksetup/src/SSMQuickSetup.ts b/clients/client-ssm-quicksetup/src/SSMQuickSetup.ts new file mode 100644 index 000000000000..435f0902c7c0 --- /dev/null +++ b/clients/client-ssm-quicksetup/src/SSMQuickSetup.ts @@ -0,0 +1,283 @@ +// smithy-typescript generated code +import { createAggregatedClient } from "@smithy/smithy-client"; +import { HttpHandlerOptions as __HttpHandlerOptions } from "@smithy/types"; + +import { + CreateConfigurationManagerCommand, + CreateConfigurationManagerCommandInput, + CreateConfigurationManagerCommandOutput, +} from "./commands/CreateConfigurationManagerCommand"; +import { + DeleteConfigurationManagerCommand, + DeleteConfigurationManagerCommandInput, + DeleteConfigurationManagerCommandOutput, +} from "./commands/DeleteConfigurationManagerCommand"; +import { + GetConfigurationManagerCommand, + GetConfigurationManagerCommandInput, + GetConfigurationManagerCommandOutput, +} from "./commands/GetConfigurationManagerCommand"; +import { + GetServiceSettingsCommand, + GetServiceSettingsCommandInput, + GetServiceSettingsCommandOutput, +} from "./commands/GetServiceSettingsCommand"; +import { + ListConfigurationManagersCommand, + ListConfigurationManagersCommandInput, + ListConfigurationManagersCommandOutput, +} from "./commands/ListConfigurationManagersCommand"; +import { + ListQuickSetupTypesCommand, + ListQuickSetupTypesCommandInput, + ListQuickSetupTypesCommandOutput, +} from "./commands/ListQuickSetupTypesCommand"; +import { + ListTagsForResourceCommand, + ListTagsForResourceCommandInput, + ListTagsForResourceCommandOutput, +} from "./commands/ListTagsForResourceCommand"; +import { TagResourceCommand, TagResourceCommandInput, TagResourceCommandOutput } from "./commands/TagResourceCommand"; +import { + UntagResourceCommand, + UntagResourceCommandInput, + UntagResourceCommandOutput, +} from "./commands/UntagResourceCommand"; +import { + UpdateConfigurationDefinitionCommand, + UpdateConfigurationDefinitionCommandInput, + UpdateConfigurationDefinitionCommandOutput, +} from "./commands/UpdateConfigurationDefinitionCommand"; +import { + UpdateConfigurationManagerCommand, + UpdateConfigurationManagerCommandInput, + UpdateConfigurationManagerCommandOutput, +} from "./commands/UpdateConfigurationManagerCommand"; +import { + UpdateServiceSettingsCommand, + UpdateServiceSettingsCommandInput, + UpdateServiceSettingsCommandOutput, +} from "./commands/UpdateServiceSettingsCommand"; +import { SSMQuickSetupClient, SSMQuickSetupClientConfig } from "./SSMQuickSetupClient"; + +const commands = { + CreateConfigurationManagerCommand, + DeleteConfigurationManagerCommand, + GetConfigurationManagerCommand, + GetServiceSettingsCommand, + ListConfigurationManagersCommand, + ListQuickSetupTypesCommand, + ListTagsForResourceCommand, + TagResourceCommand, + UntagResourceCommand, + UpdateConfigurationDefinitionCommand, + UpdateConfigurationManagerCommand, + UpdateServiceSettingsCommand, +}; + +export interface SSMQuickSetup { + /** + * @see {@link CreateConfigurationManagerCommand} + */ + createConfigurationManager( + args: CreateConfigurationManagerCommandInput, + options?: __HttpHandlerOptions + ): Promise; + createConfigurationManager( + args: CreateConfigurationManagerCommandInput, + cb: (err: any, data?: CreateConfigurationManagerCommandOutput) => void + ): void; + createConfigurationManager( + args: CreateConfigurationManagerCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: CreateConfigurationManagerCommandOutput) => void + ): void; + + /** + * @see {@link DeleteConfigurationManagerCommand} + */ + deleteConfigurationManager( + args: DeleteConfigurationManagerCommandInput, + options?: __HttpHandlerOptions + ): Promise; + deleteConfigurationManager( + args: DeleteConfigurationManagerCommandInput, + cb: (err: any, data?: DeleteConfigurationManagerCommandOutput) => void + ): void; + deleteConfigurationManager( + args: DeleteConfigurationManagerCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DeleteConfigurationManagerCommandOutput) => void + ): void; + + /** + * @see {@link GetConfigurationManagerCommand} + */ + getConfigurationManager( + args: GetConfigurationManagerCommandInput, + options?: __HttpHandlerOptions + ): Promise; + getConfigurationManager( + args: GetConfigurationManagerCommandInput, + cb: (err: any, data?: GetConfigurationManagerCommandOutput) => void + ): void; + getConfigurationManager( + args: GetConfigurationManagerCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: GetConfigurationManagerCommandOutput) => void + ): void; + + /** + * @see {@link GetServiceSettingsCommand} + */ + getServiceSettings(): Promise; + getServiceSettings( + args: GetServiceSettingsCommandInput, + options?: __HttpHandlerOptions + ): Promise; + getServiceSettings( + args: GetServiceSettingsCommandInput, + cb: (err: any, data?: GetServiceSettingsCommandOutput) => void + ): void; + getServiceSettings( + args: GetServiceSettingsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: GetServiceSettingsCommandOutput) => void + ): void; + + /** + * @see {@link ListConfigurationManagersCommand} + */ + listConfigurationManagers(): Promise; + listConfigurationManagers( + args: ListConfigurationManagersCommandInput, + options?: __HttpHandlerOptions + ): Promise; + listConfigurationManagers( + args: ListConfigurationManagersCommandInput, + cb: (err: any, data?: ListConfigurationManagersCommandOutput) => void + ): void; + listConfigurationManagers( + args: ListConfigurationManagersCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListConfigurationManagersCommandOutput) => void + ): void; + + /** + * @see {@link ListQuickSetupTypesCommand} + */ + listQuickSetupTypes(): Promise; + listQuickSetupTypes( + args: ListQuickSetupTypesCommandInput, + options?: __HttpHandlerOptions + ): Promise; + listQuickSetupTypes( + args: ListQuickSetupTypesCommandInput, + cb: (err: any, data?: ListQuickSetupTypesCommandOutput) => void + ): void; + listQuickSetupTypes( + args: ListQuickSetupTypesCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListQuickSetupTypesCommandOutput) => void + ): void; + + /** + * @see {@link ListTagsForResourceCommand} + */ + listTagsForResource( + args: ListTagsForResourceCommandInput, + options?: __HttpHandlerOptions + ): Promise; + listTagsForResource( + args: ListTagsForResourceCommandInput, + cb: (err: any, data?: ListTagsForResourceCommandOutput) => void + ): void; + listTagsForResource( + args: ListTagsForResourceCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListTagsForResourceCommandOutput) => void + ): void; + + /** + * @see {@link TagResourceCommand} + */ + tagResource(args: TagResourceCommandInput, options?: __HttpHandlerOptions): Promise; + tagResource(args: TagResourceCommandInput, cb: (err: any, data?: TagResourceCommandOutput) => void): void; + tagResource( + args: TagResourceCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: TagResourceCommandOutput) => void + ): void; + + /** + * @see {@link UntagResourceCommand} + */ + untagResource(args: UntagResourceCommandInput, options?: __HttpHandlerOptions): Promise; + untagResource(args: UntagResourceCommandInput, cb: (err: any, data?: UntagResourceCommandOutput) => void): void; + untagResource( + args: UntagResourceCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: UntagResourceCommandOutput) => void + ): void; + + /** + * @see {@link UpdateConfigurationDefinitionCommand} + */ + updateConfigurationDefinition( + args: UpdateConfigurationDefinitionCommandInput, + options?: __HttpHandlerOptions + ): Promise; + updateConfigurationDefinition( + args: UpdateConfigurationDefinitionCommandInput, + cb: (err: any, data?: UpdateConfigurationDefinitionCommandOutput) => void + ): void; + updateConfigurationDefinition( + args: UpdateConfigurationDefinitionCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: UpdateConfigurationDefinitionCommandOutput) => void + ): void; + + /** + * @see {@link UpdateConfigurationManagerCommand} + */ + updateConfigurationManager( + args: UpdateConfigurationManagerCommandInput, + options?: __HttpHandlerOptions + ): Promise; + updateConfigurationManager( + args: UpdateConfigurationManagerCommandInput, + cb: (err: any, data?: UpdateConfigurationManagerCommandOutput) => void + ): void; + updateConfigurationManager( + args: UpdateConfigurationManagerCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: UpdateConfigurationManagerCommandOutput) => void + ): void; + + /** + * @see {@link UpdateServiceSettingsCommand} + */ + updateServiceSettings(): Promise; + updateServiceSettings( + args: UpdateServiceSettingsCommandInput, + options?: __HttpHandlerOptions + ): Promise; + updateServiceSettings( + args: UpdateServiceSettingsCommandInput, + cb: (err: any, data?: UpdateServiceSettingsCommandOutput) => void + ): void; + updateServiceSettings( + args: UpdateServiceSettingsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: UpdateServiceSettingsCommandOutput) => void + ): void; +} + +/** + *

Quick Setup helps you quickly configure frequently used services and features with + * recommended best practices. Quick Setup simplifies setting up services, including + * Systems Manager, by automating common or recommended tasks.

+ * @public + */ +export class SSMQuickSetup extends SSMQuickSetupClient implements SSMQuickSetup {} +createAggregatedClient(commands, SSMQuickSetup); diff --git a/clients/client-ssm-quicksetup/src/SSMQuickSetupClient.ts b/clients/client-ssm-quicksetup/src/SSMQuickSetupClient.ts new file mode 100644 index 000000000000..ef29c794c0f3 --- /dev/null +++ b/clients/client-ssm-quicksetup/src/SSMQuickSetupClient.ts @@ -0,0 +1,366 @@ +// smithy-typescript generated code +import { + getHostHeaderPlugin, + HostHeaderInputConfig, + HostHeaderResolvedConfig, + resolveHostHeaderConfig, +} from "@aws-sdk/middleware-host-header"; +import { getLoggerPlugin } from "@aws-sdk/middleware-logger"; +import { getRecursionDetectionPlugin } from "@aws-sdk/middleware-recursion-detection"; +import { + getUserAgentPlugin, + resolveUserAgentConfig, + UserAgentInputConfig, + UserAgentResolvedConfig, +} from "@aws-sdk/middleware-user-agent"; +import { RegionInputConfig, RegionResolvedConfig, resolveRegionConfig } from "@smithy/config-resolver"; +import { + DefaultIdentityProviderConfig, + getHttpAuthSchemeEndpointRuleSetPlugin, + getHttpSigningPlugin, +} from "@smithy/core"; +import { getContentLengthPlugin } from "@smithy/middleware-content-length"; +import { EndpointInputConfig, EndpointResolvedConfig, resolveEndpointConfig } from "@smithy/middleware-endpoint"; +import { getRetryPlugin, resolveRetryConfig, RetryInputConfig, RetryResolvedConfig } from "@smithy/middleware-retry"; +import { HttpHandlerUserInput as __HttpHandlerUserInput } from "@smithy/protocol-http"; +import { + Client as __Client, + DefaultsMode as __DefaultsMode, + SmithyConfiguration as __SmithyConfiguration, + SmithyResolvedConfiguration as __SmithyResolvedConfiguration, +} from "@smithy/smithy-client"; +import { + AwsCredentialIdentityProvider, + BodyLengthCalculator as __BodyLengthCalculator, + CheckOptionalClientConfig as __CheckOptionalClientConfig, + ChecksumConstructor as __ChecksumConstructor, + Decoder as __Decoder, + Encoder as __Encoder, + EndpointV2 as __EndpointV2, + HashConstructor as __HashConstructor, + HttpHandlerOptions as __HttpHandlerOptions, + Logger as __Logger, + Provider as __Provider, + Provider, + StreamCollector as __StreamCollector, + UrlParser as __UrlParser, + UserAgent as __UserAgent, +} from "@smithy/types"; + +import { + defaultSSMQuickSetupHttpAuthSchemeParametersProvider, + HttpAuthSchemeInputConfig, + HttpAuthSchemeResolvedConfig, + resolveHttpAuthSchemeConfig, +} from "./auth/httpAuthSchemeProvider"; +import { + CreateConfigurationManagerCommandInput, + CreateConfigurationManagerCommandOutput, +} from "./commands/CreateConfigurationManagerCommand"; +import { + DeleteConfigurationManagerCommandInput, + DeleteConfigurationManagerCommandOutput, +} from "./commands/DeleteConfigurationManagerCommand"; +import { + GetConfigurationManagerCommandInput, + GetConfigurationManagerCommandOutput, +} from "./commands/GetConfigurationManagerCommand"; +import { GetServiceSettingsCommandInput, GetServiceSettingsCommandOutput } from "./commands/GetServiceSettingsCommand"; +import { + ListConfigurationManagersCommandInput, + ListConfigurationManagersCommandOutput, +} from "./commands/ListConfigurationManagersCommand"; +import { + ListQuickSetupTypesCommandInput, + ListQuickSetupTypesCommandOutput, +} from "./commands/ListQuickSetupTypesCommand"; +import { + ListTagsForResourceCommandInput, + ListTagsForResourceCommandOutput, +} from "./commands/ListTagsForResourceCommand"; +import { TagResourceCommandInput, TagResourceCommandOutput } from "./commands/TagResourceCommand"; +import { UntagResourceCommandInput, UntagResourceCommandOutput } from "./commands/UntagResourceCommand"; +import { + UpdateConfigurationDefinitionCommandInput, + UpdateConfigurationDefinitionCommandOutput, +} from "./commands/UpdateConfigurationDefinitionCommand"; +import { + UpdateConfigurationManagerCommandInput, + UpdateConfigurationManagerCommandOutput, +} from "./commands/UpdateConfigurationManagerCommand"; +import { + UpdateServiceSettingsCommandInput, + UpdateServiceSettingsCommandOutput, +} from "./commands/UpdateServiceSettingsCommand"; +import { + ClientInputEndpointParameters, + ClientResolvedEndpointParameters, + EndpointParameters, + resolveClientEndpointParameters, +} from "./endpoint/EndpointParameters"; +import { getRuntimeConfig as __getRuntimeConfig } from "./runtimeConfig"; +import { resolveRuntimeExtensions, RuntimeExtension, RuntimeExtensionsConfig } from "./runtimeExtensions"; + +export { __Client }; + +/** + * @public + */ +export type ServiceInputTypes = + | CreateConfigurationManagerCommandInput + | DeleteConfigurationManagerCommandInput + | GetConfigurationManagerCommandInput + | GetServiceSettingsCommandInput + | ListConfigurationManagersCommandInput + | ListQuickSetupTypesCommandInput + | ListTagsForResourceCommandInput + | TagResourceCommandInput + | UntagResourceCommandInput + | UpdateConfigurationDefinitionCommandInput + | UpdateConfigurationManagerCommandInput + | UpdateServiceSettingsCommandInput; + +/** + * @public + */ +export type ServiceOutputTypes = + | CreateConfigurationManagerCommandOutput + | DeleteConfigurationManagerCommandOutput + | GetConfigurationManagerCommandOutput + | GetServiceSettingsCommandOutput + | ListConfigurationManagersCommandOutput + | ListQuickSetupTypesCommandOutput + | ListTagsForResourceCommandOutput + | TagResourceCommandOutput + | UntagResourceCommandOutput + | UpdateConfigurationDefinitionCommandOutput + | UpdateConfigurationManagerCommandOutput + | UpdateServiceSettingsCommandOutput; + +/** + * @public + */ +export interface ClientDefaults extends Partial<__SmithyConfiguration<__HttpHandlerOptions>> { + /** + * The HTTP handler to use or its constructor options. Fetch in browser and Https in Nodejs. + */ + requestHandler?: __HttpHandlerUserInput; + + /** + * A constructor for a class implementing the {@link @smithy/types#ChecksumConstructor} interface + * that computes the SHA-256 HMAC or checksum of a string or binary buffer. + * @internal + */ + sha256?: __ChecksumConstructor | __HashConstructor; + + /** + * The function that will be used to convert strings into HTTP endpoints. + * @internal + */ + urlParser?: __UrlParser; + + /** + * A function that can calculate the length of a request body. + * @internal + */ + bodyLengthChecker?: __BodyLengthCalculator; + + /** + * A function that converts a stream into an array of bytes. + * @internal + */ + streamCollector?: __StreamCollector; + + /** + * The function that will be used to convert a base64-encoded string to a byte array. + * @internal + */ + base64Decoder?: __Decoder; + + /** + * The function that will be used to convert binary data to a base64-encoded string. + * @internal + */ + base64Encoder?: __Encoder; + + /** + * The function that will be used to convert a UTF8-encoded string to a byte array. + * @internal + */ + utf8Decoder?: __Decoder; + + /** + * The function that will be used to convert binary data to a UTF-8 encoded string. + * @internal + */ + utf8Encoder?: __Encoder; + + /** + * The runtime environment. + * @internal + */ + runtime?: string; + + /** + * Disable dynamically changing the endpoint of the client based on the hostPrefix + * trait of an operation. + */ + disableHostPrefix?: boolean; + + /** + * Unique service identifier. + * @internal + */ + serviceId?: string; + + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + + /** + * The AWS region to which this client will send requests + */ + region?: string | __Provider; + + /** + * The provider populating default tracking information to be sent with `user-agent`, `x-amz-user-agent` header + * @internal + */ + defaultUserAgentProvider?: Provider<__UserAgent>; + + /** + * Default credentials provider; Not available in browser runtime. + * @deprecated + * @internal + */ + credentialDefaultProvider?: (input: any) => AwsCredentialIdentityProvider; + + /** + * Value for how many times a request will be made at most in case of retry. + */ + maxAttempts?: number | __Provider; + + /** + * Specifies which retry algorithm to use. + * @see https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-smithy-util-retry/Enum/RETRY_MODES/ + * + */ + retryMode?: string | __Provider; + + /** + * Optional logger for logging debug/info/warn/error. + */ + logger?: __Logger; + + /** + * Optional extensions + */ + extensions?: RuntimeExtension[]; + + /** + * The {@link @smithy/smithy-client#DefaultsMode} that will be used to determine how certain default configuration options are resolved in the SDK. + */ + defaultsMode?: __DefaultsMode | __Provider<__DefaultsMode>; +} + +/** + * @public + */ +export type SSMQuickSetupClientConfigType = Partial<__SmithyConfiguration<__HttpHandlerOptions>> & + ClientDefaults & + UserAgentInputConfig & + RetryInputConfig & + RegionInputConfig & + HostHeaderInputConfig & + EndpointInputConfig & + HttpAuthSchemeInputConfig & + ClientInputEndpointParameters; +/** + * @public + * + * The configuration interface of SSMQuickSetupClient class constructor that set the region, credentials and other options. + */ +export interface SSMQuickSetupClientConfig extends SSMQuickSetupClientConfigType {} + +/** + * @public + */ +export type SSMQuickSetupClientResolvedConfigType = __SmithyResolvedConfiguration<__HttpHandlerOptions> & + Required & + RuntimeExtensionsConfig & + UserAgentResolvedConfig & + RetryResolvedConfig & + RegionResolvedConfig & + HostHeaderResolvedConfig & + EndpointResolvedConfig & + HttpAuthSchemeResolvedConfig & + ClientResolvedEndpointParameters; +/** + * @public + * + * The resolved configuration interface of SSMQuickSetupClient class. This is resolved and normalized from the {@link SSMQuickSetupClientConfig | constructor configuration interface}. + */ +export interface SSMQuickSetupClientResolvedConfig extends SSMQuickSetupClientResolvedConfigType {} + +/** + *

Quick Setup helps you quickly configure frequently used services and features with + * recommended best practices. Quick Setup simplifies setting up services, including + * Systems Manager, by automating common or recommended tasks.

+ * @public + */ +export class SSMQuickSetupClient extends __Client< + __HttpHandlerOptions, + ServiceInputTypes, + ServiceOutputTypes, + SSMQuickSetupClientResolvedConfig +> { + /** + * The resolved configuration of SSMQuickSetupClient class. This is resolved and normalized from the {@link SSMQuickSetupClientConfig | constructor configuration interface}. + */ + readonly config: SSMQuickSetupClientResolvedConfig; + + constructor(...[configuration]: __CheckOptionalClientConfig) { + const _config_0 = __getRuntimeConfig(configuration || {}); + const _config_1 = resolveClientEndpointParameters(_config_0); + const _config_2 = resolveUserAgentConfig(_config_1); + const _config_3 = resolveRetryConfig(_config_2); + const _config_4 = resolveRegionConfig(_config_3); + const _config_5 = resolveHostHeaderConfig(_config_4); + const _config_6 = resolveEndpointConfig(_config_5); + const _config_7 = resolveHttpAuthSchemeConfig(_config_6); + const _config_8 = resolveRuntimeExtensions(_config_7, configuration?.extensions || []); + super(_config_8); + this.config = _config_8; + this.middlewareStack.use(getUserAgentPlugin(this.config)); + this.middlewareStack.use(getRetryPlugin(this.config)); + this.middlewareStack.use(getContentLengthPlugin(this.config)); + this.middlewareStack.use(getHostHeaderPlugin(this.config)); + this.middlewareStack.use(getLoggerPlugin(this.config)); + this.middlewareStack.use(getRecursionDetectionPlugin(this.config)); + this.middlewareStack.use( + getHttpAuthSchemeEndpointRuleSetPlugin(this.config, { + httpAuthSchemeParametersProvider: defaultSSMQuickSetupHttpAuthSchemeParametersProvider, + identityProviderConfigProvider: async (config: SSMQuickSetupClientResolvedConfig) => + new DefaultIdentityProviderConfig({ + "aws.auth#sigv4": config.credentials, + }), + }) + ); + this.middlewareStack.use(getHttpSigningPlugin(this.config)); + } + + /** + * Destroy underlying resources, like sockets. It's usually not necessary to do this. + * However in Node.js, it's best to explicitly shut down the client's agent when it is no longer needed. + * Otherwise, sockets might stay open for quite a long time before the server terminates them. + */ + destroy(): void { + super.destroy(); + } +} diff --git a/clients/client-ssm-quicksetup/src/auth/httpAuthExtensionConfiguration.ts b/clients/client-ssm-quicksetup/src/auth/httpAuthExtensionConfiguration.ts new file mode 100644 index 000000000000..6f9eeca0f06b --- /dev/null +++ b/clients/client-ssm-quicksetup/src/auth/httpAuthExtensionConfiguration.ts @@ -0,0 +1,72 @@ +// smithy-typescript generated code +import { AwsCredentialIdentity, AwsCredentialIdentityProvider, HttpAuthScheme } from "@smithy/types"; + +import { SSMQuickSetupHttpAuthSchemeProvider } from "./httpAuthSchemeProvider"; + +/** + * @internal + */ +export interface HttpAuthExtensionConfiguration { + setHttpAuthScheme(httpAuthScheme: HttpAuthScheme): void; + httpAuthSchemes(): HttpAuthScheme[]; + setHttpAuthSchemeProvider(httpAuthSchemeProvider: SSMQuickSetupHttpAuthSchemeProvider): void; + httpAuthSchemeProvider(): SSMQuickSetupHttpAuthSchemeProvider; + setCredentials(credentials: AwsCredentialIdentity | AwsCredentialIdentityProvider): void; + credentials(): AwsCredentialIdentity | AwsCredentialIdentityProvider | undefined; +} + +/** + * @internal + */ +export type HttpAuthRuntimeConfig = Partial<{ + httpAuthSchemes: HttpAuthScheme[]; + httpAuthSchemeProvider: SSMQuickSetupHttpAuthSchemeProvider; + credentials: AwsCredentialIdentity | AwsCredentialIdentityProvider; +}>; + +/** + * @internal + */ +export const getHttpAuthExtensionConfiguration = ( + runtimeConfig: HttpAuthRuntimeConfig +): HttpAuthExtensionConfiguration => { + const _httpAuthSchemes = runtimeConfig.httpAuthSchemes!; + let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider!; + let _credentials = runtimeConfig.credentials; + return { + setHttpAuthScheme(httpAuthScheme: HttpAuthScheme): void { + const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId); + if (index === -1) { + _httpAuthSchemes.push(httpAuthScheme); + } else { + _httpAuthSchemes.splice(index, 1, httpAuthScheme); + } + }, + httpAuthSchemes(): HttpAuthScheme[] { + return _httpAuthSchemes; + }, + setHttpAuthSchemeProvider(httpAuthSchemeProvider: SSMQuickSetupHttpAuthSchemeProvider): void { + _httpAuthSchemeProvider = httpAuthSchemeProvider; + }, + httpAuthSchemeProvider(): SSMQuickSetupHttpAuthSchemeProvider { + return _httpAuthSchemeProvider; + }, + setCredentials(credentials: AwsCredentialIdentity | AwsCredentialIdentityProvider): void { + _credentials = credentials; + }, + credentials(): AwsCredentialIdentity | AwsCredentialIdentityProvider | undefined { + return _credentials; + }, + }; +}; + +/** + * @internal + */ +export const resolveHttpAuthRuntimeConfig = (config: HttpAuthExtensionConfiguration): HttpAuthRuntimeConfig => { + return { + httpAuthSchemes: config.httpAuthSchemes(), + httpAuthSchemeProvider: config.httpAuthSchemeProvider(), + credentials: config.credentials(), + }; +}; diff --git a/clients/client-ssm-quicksetup/src/auth/httpAuthSchemeProvider.ts b/clients/client-ssm-quicksetup/src/auth/httpAuthSchemeProvider.ts new file mode 100644 index 000000000000..779a60c9a09c --- /dev/null +++ b/clients/client-ssm-quicksetup/src/auth/httpAuthSchemeProvider.ts @@ -0,0 +1,138 @@ +// smithy-typescript generated code +import { + AwsSdkSigV4AuthInputConfig, + AwsSdkSigV4AuthResolvedConfig, + AwsSdkSigV4PreviouslyResolved, + resolveAwsSdkSigV4Config, +} from "@aws-sdk/core"; +import { + HandlerExecutionContext, + HttpAuthOption, + HttpAuthScheme, + HttpAuthSchemeParameters, + HttpAuthSchemeParametersProvider, + HttpAuthSchemeProvider, +} from "@smithy/types"; +import { getSmithyContext, normalizeProvider } from "@smithy/util-middleware"; + +import { SSMQuickSetupClientConfig, SSMQuickSetupClientResolvedConfig } from "../SSMQuickSetupClient"; + +/** + * @internal + */ +export interface SSMQuickSetupHttpAuthSchemeParameters extends HttpAuthSchemeParameters { + region?: string; +} + +/** + * @internal + */ +export interface SSMQuickSetupHttpAuthSchemeParametersProvider + extends HttpAuthSchemeParametersProvider< + SSMQuickSetupClientResolvedConfig, + HandlerExecutionContext, + SSMQuickSetupHttpAuthSchemeParameters, + object + > {} + +/** + * @internal + */ +export const defaultSSMQuickSetupHttpAuthSchemeParametersProvider = async ( + config: SSMQuickSetupClientResolvedConfig, + context: HandlerExecutionContext, + input: object +): Promise => { + return { + operation: getSmithyContext(context).operation as string, + region: + (await normalizeProvider(config.region)()) || + (() => { + throw new Error("expected `region` to be configured for `aws.auth#sigv4`"); + })(), + }; +}; + +function createAwsAuthSigv4HttpAuthOption(authParameters: SSMQuickSetupHttpAuthSchemeParameters): HttpAuthOption { + return { + schemeId: "aws.auth#sigv4", + signingProperties: { + name: "ssm-quicksetup", + region: authParameters.region, + }, + propertiesExtractor: (config: Partial, context) => ({ + /** + * @internal + */ + signingProperties: { + config, + context, + }, + }), + }; +} + +/** + * @internal + */ +export interface SSMQuickSetupHttpAuthSchemeProvider + extends HttpAuthSchemeProvider {} + +/** + * @internal + */ +export const defaultSSMQuickSetupHttpAuthSchemeProvider: SSMQuickSetupHttpAuthSchemeProvider = (authParameters) => { + const options: HttpAuthOption[] = []; + switch (authParameters.operation) { + default: { + options.push(createAwsAuthSigv4HttpAuthOption(authParameters)); + } + } + return options; +}; + +/** + * @internal + */ +export interface HttpAuthSchemeInputConfig extends AwsSdkSigV4AuthInputConfig { + /** + * Configuration of HttpAuthSchemes for a client which provides default identity providers and signers per auth scheme. + * @internal + */ + httpAuthSchemes?: HttpAuthScheme[]; + + /** + * Configuration of an HttpAuthSchemeProvider for a client which resolves which HttpAuthScheme to use. + * @internal + */ + httpAuthSchemeProvider?: SSMQuickSetupHttpAuthSchemeProvider; +} + +/** + * @internal + */ +export interface HttpAuthSchemeResolvedConfig extends AwsSdkSigV4AuthResolvedConfig { + /** + * Configuration of HttpAuthSchemes for a client which provides default identity providers and signers per auth scheme. + * @internal + */ + readonly httpAuthSchemes: HttpAuthScheme[]; + + /** + * Configuration of an HttpAuthSchemeProvider for a client which resolves which HttpAuthScheme to use. + * @internal + */ + readonly httpAuthSchemeProvider: SSMQuickSetupHttpAuthSchemeProvider; +} + +/** + * @internal + */ +export const resolveHttpAuthSchemeConfig = ( + config: T & HttpAuthSchemeInputConfig & AwsSdkSigV4PreviouslyResolved +): T & HttpAuthSchemeResolvedConfig => { + const config_0 = resolveAwsSdkSigV4Config(config); + return { + ...config_0, + } as T & HttpAuthSchemeResolvedConfig; +}; diff --git a/clients/client-ssm-quicksetup/src/commands/CreateConfigurationManagerCommand.ts b/clients/client-ssm-quicksetup/src/commands/CreateConfigurationManagerCommand.ts new file mode 100644 index 000000000000..e1218447409c --- /dev/null +++ b/clients/client-ssm-quicksetup/src/commands/CreateConfigurationManagerCommand.ts @@ -0,0 +1,119 @@ +// 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 { commonParams } from "../endpoint/EndpointParameters"; +import { + CreateConfigurationManagerInput, + CreateConfigurationManagerInputFilterSensitiveLog, + CreateConfigurationManagerOutput, +} from "../models/models_0"; +import { de_CreateConfigurationManagerCommand, se_CreateConfigurationManagerCommand } from "../protocols/Aws_restJson1"; +import { ServiceInputTypes, ServiceOutputTypes, SSMQuickSetupClientResolvedConfig } from "../SSMQuickSetupClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link CreateConfigurationManagerCommand}. + */ +export interface CreateConfigurationManagerCommandInput extends CreateConfigurationManagerInput {} +/** + * @public + * + * The output of {@link CreateConfigurationManagerCommand}. + */ +export interface CreateConfigurationManagerCommandOutput extends CreateConfigurationManagerOutput, __MetadataBearer {} + +/** + *

Creates a Quick Setup configuration manager resource. This object is a collection + * of desired state configurations for multiple configuration definitions and + * summaries describing the deployments of those definitions.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { SSMQuickSetupClient, CreateConfigurationManagerCommand } from "@aws-sdk/client-ssm-quicksetup"; // ES Modules import + * // const { SSMQuickSetupClient, CreateConfigurationManagerCommand } = require("@aws-sdk/client-ssm-quicksetup"); // CommonJS import + * const client = new SSMQuickSetupClient(config); + * const input = { // CreateConfigurationManagerInput + * Name: "STRING_VALUE", + * Description: "STRING_VALUE", + * ConfigurationDefinitions: [ // ConfigurationDefinitionsInputList // required + * { // ConfigurationDefinitionInput + * Type: "STRING_VALUE", // required + * Parameters: { // ConfigurationParametersMap // required + * "": "STRING_VALUE", + * }, + * TypeVersion: "STRING_VALUE", + * LocalDeploymentExecutionRoleName: "STRING_VALUE", + * LocalDeploymentAdministrationRoleArn: "STRING_VALUE", + * }, + * ], + * Tags: { // TagsMap + * "": "STRING_VALUE", + * }, + * }; + * const command = new CreateConfigurationManagerCommand(input); + * const response = await client.send(command); + * // { // CreateConfigurationManagerOutput + * // ManagerArn: "STRING_VALUE", // required + * // }; + * + * ``` + * + * @param CreateConfigurationManagerCommandInput - {@link CreateConfigurationManagerCommandInput} + * @returns {@link CreateConfigurationManagerCommandOutput} + * @see {@link CreateConfigurationManagerCommandInput} for command's `input` shape. + * @see {@link CreateConfigurationManagerCommandOutput} for command's `response` shape. + * @see {@link SSMQuickSetupClientResolvedConfig | config} for SSMQuickSetupClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

The requester has insufficient permissions to perform the operation.

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

Another request is being processed. Wait a few minutes and try again.

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

An error occurred on the server side.

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

The request or operation exceeds the maximum allowed request rate per Amazon Web Services account and Amazon Web Services Region.

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

The request is invalid. Verify the values provided for the request parameters are + * accurate.

+ * + * @throws {@link SSMQuickSetupServiceException} + *

Base exception class for all service exceptions from SSMQuickSetup service.

+ * + * @public + */ +export class CreateConfigurationManagerCommand extends $Command + .classBuilder< + CreateConfigurationManagerCommandInput, + CreateConfigurationManagerCommandOutput, + SSMQuickSetupClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: SSMQuickSetupClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("QuickSetup", "CreateConfigurationManager", {}) + .n("SSMQuickSetupClient", "CreateConfigurationManagerCommand") + .f(CreateConfigurationManagerInputFilterSensitiveLog, void 0) + .ser(se_CreateConfigurationManagerCommand) + .de(de_CreateConfigurationManagerCommand) + .build() {} diff --git a/clients/client-ssm-quicksetup/src/commands/DeleteConfigurationManagerCommand.ts b/clients/client-ssm-quicksetup/src/commands/DeleteConfigurationManagerCommand.ts new file mode 100644 index 000000000000..2b80b06655e7 --- /dev/null +++ b/clients/client-ssm-quicksetup/src/commands/DeleteConfigurationManagerCommand.ts @@ -0,0 +1,99 @@ +// 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 { commonParams } from "../endpoint/EndpointParameters"; +import { DeleteConfigurationManagerInput } from "../models/models_0"; +import { de_DeleteConfigurationManagerCommand, se_DeleteConfigurationManagerCommand } from "../protocols/Aws_restJson1"; +import { ServiceInputTypes, ServiceOutputTypes, SSMQuickSetupClientResolvedConfig } from "../SSMQuickSetupClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link DeleteConfigurationManagerCommand}. + */ +export interface DeleteConfigurationManagerCommandInput extends DeleteConfigurationManagerInput {} +/** + * @public + * + * The output of {@link DeleteConfigurationManagerCommand}. + */ +export interface DeleteConfigurationManagerCommandOutput extends __MetadataBearer {} + +/** + *

Deletes a configuration manager.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { SSMQuickSetupClient, DeleteConfigurationManagerCommand } from "@aws-sdk/client-ssm-quicksetup"; // ES Modules import + * // const { SSMQuickSetupClient, DeleteConfigurationManagerCommand } = require("@aws-sdk/client-ssm-quicksetup"); // CommonJS import + * const client = new SSMQuickSetupClient(config); + * const input = { // DeleteConfigurationManagerInput + * ManagerArn: "STRING_VALUE", // required + * }; + * const command = new DeleteConfigurationManagerCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param DeleteConfigurationManagerCommandInput - {@link DeleteConfigurationManagerCommandInput} + * @returns {@link DeleteConfigurationManagerCommandOutput} + * @see {@link DeleteConfigurationManagerCommandInput} for command's `input` shape. + * @see {@link DeleteConfigurationManagerCommandOutput} for command's `response` shape. + * @see {@link SSMQuickSetupClientResolvedConfig | config} for SSMQuickSetupClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

The requester has insufficient permissions to perform the operation.

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

Another request is being processed. Wait a few minutes and try again.

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

An error occurred on the server side.

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

The resource couldn't be found. Check the ID or name and try again.

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

The request or operation exceeds the maximum allowed request rate per Amazon Web Services account and Amazon Web Services Region.

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

The request is invalid. Verify the values provided for the request parameters are + * accurate.

+ * + * @throws {@link SSMQuickSetupServiceException} + *

Base exception class for all service exceptions from SSMQuickSetup service.

+ * + * @public + */ +export class DeleteConfigurationManagerCommand extends $Command + .classBuilder< + DeleteConfigurationManagerCommandInput, + DeleteConfigurationManagerCommandOutput, + SSMQuickSetupClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: SSMQuickSetupClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("QuickSetup", "DeleteConfigurationManager", {}) + .n("SSMQuickSetupClient", "DeleteConfigurationManagerCommand") + .f(void 0, void 0) + .ser(se_DeleteConfigurationManagerCommand) + .de(de_DeleteConfigurationManagerCommand) + .build() {} diff --git a/clients/client-ssm-quicksetup/src/commands/GetConfigurationManagerCommand.ts b/clients/client-ssm-quicksetup/src/commands/GetConfigurationManagerCommand.ts new file mode 100644 index 000000000000..016c5404e7e1 --- /dev/null +++ b/clients/client-ssm-quicksetup/src/commands/GetConfigurationManagerCommand.ts @@ -0,0 +1,135 @@ +// 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 { commonParams } from "../endpoint/EndpointParameters"; +import { + GetConfigurationManagerInput, + GetConfigurationManagerOutput, + GetConfigurationManagerOutputFilterSensitiveLog, +} from "../models/models_0"; +import { de_GetConfigurationManagerCommand, se_GetConfigurationManagerCommand } from "../protocols/Aws_restJson1"; +import { ServiceInputTypes, ServiceOutputTypes, SSMQuickSetupClientResolvedConfig } from "../SSMQuickSetupClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link GetConfigurationManagerCommand}. + */ +export interface GetConfigurationManagerCommandInput extends GetConfigurationManagerInput {} +/** + * @public + * + * The output of {@link GetConfigurationManagerCommand}. + */ +export interface GetConfigurationManagerCommandOutput extends GetConfigurationManagerOutput, __MetadataBearer {} + +/** + *

Returns a configuration manager.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { SSMQuickSetupClient, GetConfigurationManagerCommand } from "@aws-sdk/client-ssm-quicksetup"; // ES Modules import + * // const { SSMQuickSetupClient, GetConfigurationManagerCommand } = require("@aws-sdk/client-ssm-quicksetup"); // CommonJS import + * const client = new SSMQuickSetupClient(config); + * const input = { // GetConfigurationManagerInput + * ManagerArn: "STRING_VALUE", // required + * }; + * const command = new GetConfigurationManagerCommand(input); + * const response = await client.send(command); + * // { // GetConfigurationManagerOutput + * // ManagerArn: "STRING_VALUE", // required + * // Description: "STRING_VALUE", + * // Name: "STRING_VALUE", + * // CreatedAt: new Date("TIMESTAMP"), + * // LastModifiedAt: new Date("TIMESTAMP"), + * // StatusSummaries: [ // StatusSummariesList + * // { // StatusSummary + * // StatusType: "Deployment" || "AsyncExecutions", // required + * // Status: "INITIALIZING" || "DEPLOYING" || "SUCCEEDED" || "DELETING" || "STOPPING" || "FAILED" || "STOPPED" || "DELETE_FAILED" || "STOP_FAILED" || "NONE", + * // StatusMessage: "STRING_VALUE", + * // LastUpdatedAt: new Date("TIMESTAMP"), // required + * // StatusDetails: { // StatusDetails + * // "": "STRING_VALUE", + * // }, + * // }, + * // ], + * // ConfigurationDefinitions: [ // ConfigurationDefinitionsList + * // { // ConfigurationDefinition + * // Type: "STRING_VALUE", // required + * // Parameters: { // ConfigurationParametersMap // required + * // "": "STRING_VALUE", + * // }, + * // TypeVersion: "STRING_VALUE", + * // LocalDeploymentExecutionRoleName: "STRING_VALUE", + * // LocalDeploymentAdministrationRoleArn: "STRING_VALUE", + * // Id: "STRING_VALUE", + * // }, + * // ], + * // Tags: { // TagsMap + * // "": "STRING_VALUE", + * // }, + * // }; + * + * ``` + * + * @param GetConfigurationManagerCommandInput - {@link GetConfigurationManagerCommandInput} + * @returns {@link GetConfigurationManagerCommandOutput} + * @see {@link GetConfigurationManagerCommandInput} for command's `input` shape. + * @see {@link GetConfigurationManagerCommandOutput} for command's `response` shape. + * @see {@link SSMQuickSetupClientResolvedConfig | config} for SSMQuickSetupClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

The requester has insufficient permissions to perform the operation.

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

Another request is being processed. Wait a few minutes and try again.

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

An error occurred on the server side.

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

The resource couldn't be found. Check the ID or name and try again.

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

The request or operation exceeds the maximum allowed request rate per Amazon Web Services account and Amazon Web Services Region.

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

The request is invalid. Verify the values provided for the request parameters are + * accurate.

+ * + * @throws {@link SSMQuickSetupServiceException} + *

Base exception class for all service exceptions from SSMQuickSetup service.

+ * + * @public + */ +export class GetConfigurationManagerCommand extends $Command + .classBuilder< + GetConfigurationManagerCommandInput, + GetConfigurationManagerCommandOutput, + SSMQuickSetupClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: SSMQuickSetupClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("QuickSetup", "GetConfigurationManager", {}) + .n("SSMQuickSetupClient", "GetConfigurationManagerCommand") + .f(void 0, GetConfigurationManagerOutputFilterSensitiveLog) + .ser(se_GetConfigurationManagerCommand) + .de(de_GetConfigurationManagerCommand) + .build() {} diff --git a/clients/client-ssm-quicksetup/src/commands/GetServiceSettingsCommand.ts b/clients/client-ssm-quicksetup/src/commands/GetServiceSettingsCommand.ts new file mode 100644 index 000000000000..8d5a0c4ebdb2 --- /dev/null +++ b/clients/client-ssm-quicksetup/src/commands/GetServiceSettingsCommand.ts @@ -0,0 +1,94 @@ +// 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 { commonParams } from "../endpoint/EndpointParameters"; +import { GetServiceSettingsOutput } from "../models/models_0"; +import { de_GetServiceSettingsCommand, se_GetServiceSettingsCommand } from "../protocols/Aws_restJson1"; +import { ServiceInputTypes, ServiceOutputTypes, SSMQuickSetupClientResolvedConfig } from "../SSMQuickSetupClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link GetServiceSettingsCommand}. + */ +export interface GetServiceSettingsCommandInput {} +/** + * @public + * + * The output of {@link GetServiceSettingsCommand}. + */ +export interface GetServiceSettingsCommandOutput extends GetServiceSettingsOutput, __MetadataBearer {} + +/** + *

Returns settings configured for Quick Setup in the requesting Amazon Web Services account and Amazon Web Services Region.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { SSMQuickSetupClient, GetServiceSettingsCommand } from "@aws-sdk/client-ssm-quicksetup"; // ES Modules import + * // const { SSMQuickSetupClient, GetServiceSettingsCommand } = require("@aws-sdk/client-ssm-quicksetup"); // CommonJS import + * const client = new SSMQuickSetupClient(config); + * const input = {}; + * const command = new GetServiceSettingsCommand(input); + * const response = await client.send(command); + * // { // GetServiceSettingsOutput + * // ServiceSettings: { // ServiceSettings + * // ExplorerEnablingRoleArn: "STRING_VALUE", + * // }, + * // }; + * + * ``` + * + * @param GetServiceSettingsCommandInput - {@link GetServiceSettingsCommandInput} + * @returns {@link GetServiceSettingsCommandOutput} + * @see {@link GetServiceSettingsCommandInput} for command's `input` shape. + * @see {@link GetServiceSettingsCommandOutput} for command's `response` shape. + * @see {@link SSMQuickSetupClientResolvedConfig | config} for SSMQuickSetupClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

The requester has insufficient permissions to perform the operation.

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

Another request is being processed. Wait a few minutes and try again.

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

An error occurred on the server side.

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

The request or operation exceeds the maximum allowed request rate per Amazon Web Services account and Amazon Web Services Region.

+ * + * @throws {@link SSMQuickSetupServiceException} + *

Base exception class for all service exceptions from SSMQuickSetup service.

+ * + * @public + */ +export class GetServiceSettingsCommand extends $Command + .classBuilder< + GetServiceSettingsCommandInput, + GetServiceSettingsCommandOutput, + SSMQuickSetupClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: SSMQuickSetupClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("QuickSetup", "GetServiceSettings", {}) + .n("SSMQuickSetupClient", "GetServiceSettingsCommand") + .f(void 0, void 0) + .ser(se_GetServiceSettingsCommand) + .de(de_GetServiceSettingsCommand) + .build() {} diff --git a/clients/client-ssm-quicksetup/src/commands/ListConfigurationManagersCommand.ts b/clients/client-ssm-quicksetup/src/commands/ListConfigurationManagersCommand.ts new file mode 100644 index 000000000000..97a22026fa80 --- /dev/null +++ b/clients/client-ssm-quicksetup/src/commands/ListConfigurationManagersCommand.ts @@ -0,0 +1,135 @@ +// 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 { commonParams } from "../endpoint/EndpointParameters"; +import { ListConfigurationManagersInput, ListConfigurationManagersOutput } from "../models/models_0"; +import { de_ListConfigurationManagersCommand, se_ListConfigurationManagersCommand } from "../protocols/Aws_restJson1"; +import { ServiceInputTypes, ServiceOutputTypes, SSMQuickSetupClientResolvedConfig } from "../SSMQuickSetupClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link ListConfigurationManagersCommand}. + */ +export interface ListConfigurationManagersCommandInput extends ListConfigurationManagersInput {} +/** + * @public + * + * The output of {@link ListConfigurationManagersCommand}. + */ +export interface ListConfigurationManagersCommandOutput extends ListConfigurationManagersOutput, __MetadataBearer {} + +/** + *

Returns Quick Setup configuration managers.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { SSMQuickSetupClient, ListConfigurationManagersCommand } from "@aws-sdk/client-ssm-quicksetup"; // ES Modules import + * // const { SSMQuickSetupClient, ListConfigurationManagersCommand } = require("@aws-sdk/client-ssm-quicksetup"); // CommonJS import + * const client = new SSMQuickSetupClient(config); + * const input = { // ListConfigurationManagersInput + * StartingToken: "STRING_VALUE", + * MaxItems: Number("int"), + * Filters: [ // FiltersList + * { // Filter + * Key: "STRING_VALUE", // required + * Values: [ // FilterValues // required + * "STRING_VALUE", + * ], + * }, + * ], + * }; + * const command = new ListConfigurationManagersCommand(input); + * const response = await client.send(command); + * // { // ListConfigurationManagersOutput + * // ConfigurationManagersList: [ // ConfigurationManagerList + * // { // ConfigurationManagerSummary + * // ManagerArn: "STRING_VALUE", // required + * // Description: "STRING_VALUE", + * // Name: "STRING_VALUE", + * // StatusSummaries: [ // StatusSummariesList + * // { // StatusSummary + * // StatusType: "Deployment" || "AsyncExecutions", // required + * // Status: "INITIALIZING" || "DEPLOYING" || "SUCCEEDED" || "DELETING" || "STOPPING" || "FAILED" || "STOPPED" || "DELETE_FAILED" || "STOP_FAILED" || "NONE", + * // StatusMessage: "STRING_VALUE", + * // LastUpdatedAt: new Date("TIMESTAMP"), // required + * // StatusDetails: { // StatusDetails + * // "": "STRING_VALUE", + * // }, + * // }, + * // ], + * // ConfigurationDefinitionSummaries: [ // ConfigurationDefinitionSummariesList + * // { // ConfigurationDefinitionSummary + * // Id: "STRING_VALUE", + * // Type: "STRING_VALUE", + * // TypeVersion: "STRING_VALUE", + * // FirstClassParameters: { // ConfigurationParametersMap + * // "": "STRING_VALUE", + * // }, + * // }, + * // ], + * // }, + * // ], + * // NextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListConfigurationManagersCommandInput - {@link ListConfigurationManagersCommandInput} + * @returns {@link ListConfigurationManagersCommandOutput} + * @see {@link ListConfigurationManagersCommandInput} for command's `input` shape. + * @see {@link ListConfigurationManagersCommandOutput} for command's `response` shape. + * @see {@link SSMQuickSetupClientResolvedConfig | config} for SSMQuickSetupClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

The requester has insufficient permissions to perform the operation.

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

Another request is being processed. Wait a few minutes and try again.

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

An error occurred on the server side.

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

The request or operation exceeds the maximum allowed request rate per Amazon Web Services account and Amazon Web Services Region.

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

The request is invalid. Verify the values provided for the request parameters are + * accurate.

+ * + * @throws {@link SSMQuickSetupServiceException} + *

Base exception class for all service exceptions from SSMQuickSetup service.

+ * + * @public + */ +export class ListConfigurationManagersCommand extends $Command + .classBuilder< + ListConfigurationManagersCommandInput, + ListConfigurationManagersCommandOutput, + SSMQuickSetupClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: SSMQuickSetupClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("QuickSetup", "ListConfigurationManagers", {}) + .n("SSMQuickSetupClient", "ListConfigurationManagersCommand") + .f(void 0, void 0) + .ser(se_ListConfigurationManagersCommand) + .de(de_ListConfigurationManagersCommand) + .build() {} diff --git a/clients/client-ssm-quicksetup/src/commands/ListQuickSetupTypesCommand.ts b/clients/client-ssm-quicksetup/src/commands/ListQuickSetupTypesCommand.ts new file mode 100644 index 000000000000..7b96bae8a09c --- /dev/null +++ b/clients/client-ssm-quicksetup/src/commands/ListQuickSetupTypesCommand.ts @@ -0,0 +1,97 @@ +// 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 { commonParams } from "../endpoint/EndpointParameters"; +import { ListQuickSetupTypesOutput } from "../models/models_0"; +import { de_ListQuickSetupTypesCommand, se_ListQuickSetupTypesCommand } from "../protocols/Aws_restJson1"; +import { ServiceInputTypes, ServiceOutputTypes, SSMQuickSetupClientResolvedConfig } from "../SSMQuickSetupClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link ListQuickSetupTypesCommand}. + */ +export interface ListQuickSetupTypesCommandInput {} +/** + * @public + * + * The output of {@link ListQuickSetupTypesCommand}. + */ +export interface ListQuickSetupTypesCommandOutput extends ListQuickSetupTypesOutput, __MetadataBearer {} + +/** + *

Returns the available Quick Setup types.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { SSMQuickSetupClient, ListQuickSetupTypesCommand } from "@aws-sdk/client-ssm-quicksetup"; // ES Modules import + * // const { SSMQuickSetupClient, ListQuickSetupTypesCommand } = require("@aws-sdk/client-ssm-quicksetup"); // CommonJS import + * const client = new SSMQuickSetupClient(config); + * const input = {}; + * const command = new ListQuickSetupTypesCommand(input); + * const response = await client.send(command); + * // { // ListQuickSetupTypesOutput + * // QuickSetupTypeList: [ // QuickSetupTypeList + * // { // QuickSetupTypeOutput + * // Type: "STRING_VALUE", + * // LatestVersion: "STRING_VALUE", + * // }, + * // ], + * // }; + * + * ``` + * + * @param ListQuickSetupTypesCommandInput - {@link ListQuickSetupTypesCommandInput} + * @returns {@link ListQuickSetupTypesCommandOutput} + * @see {@link ListQuickSetupTypesCommandInput} for command's `input` shape. + * @see {@link ListQuickSetupTypesCommandOutput} for command's `response` shape. + * @see {@link SSMQuickSetupClientResolvedConfig | config} for SSMQuickSetupClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

The requester has insufficient permissions to perform the operation.

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

Another request is being processed. Wait a few minutes and try again.

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

An error occurred on the server side.

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

The request or operation exceeds the maximum allowed request rate per Amazon Web Services account and Amazon Web Services Region.

+ * + * @throws {@link SSMQuickSetupServiceException} + *

Base exception class for all service exceptions from SSMQuickSetup service.

+ * + * @public + */ +export class ListQuickSetupTypesCommand extends $Command + .classBuilder< + ListQuickSetupTypesCommandInput, + ListQuickSetupTypesCommandOutput, + SSMQuickSetupClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: SSMQuickSetupClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("QuickSetup", "ListQuickSetupTypes", {}) + .n("SSMQuickSetupClient", "ListQuickSetupTypesCommand") + .f(void 0, void 0) + .ser(se_ListQuickSetupTypesCommand) + .de(de_ListQuickSetupTypesCommand) + .build() {} diff --git a/clients/client-ssm-quicksetup/src/commands/ListTagsForResourceCommand.ts b/clients/client-ssm-quicksetup/src/commands/ListTagsForResourceCommand.ts new file mode 100644 index 000000000000..d296896d37fc --- /dev/null +++ b/clients/client-ssm-quicksetup/src/commands/ListTagsForResourceCommand.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 { commonParams } from "../endpoint/EndpointParameters"; +import { + ListTagsForResourceRequest, + ListTagsForResourceResponse, + ListTagsForResourceResponseFilterSensitiveLog, +} from "../models/models_0"; +import { de_ListTagsForResourceCommand, se_ListTagsForResourceCommand } from "../protocols/Aws_restJson1"; +import { ServiceInputTypes, ServiceOutputTypes, SSMQuickSetupClientResolvedConfig } from "../SSMQuickSetupClient"; + +/** + * @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 {} + +/** + *

Returns tags assigned to the resource.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { SSMQuickSetupClient, ListTagsForResourceCommand } from "@aws-sdk/client-ssm-quicksetup"; // ES Modules import + * // const { SSMQuickSetupClient, ListTagsForResourceCommand } = require("@aws-sdk/client-ssm-quicksetup"); // CommonJS import + * const client = new SSMQuickSetupClient(config); + * const input = { // ListTagsForResourceRequest + * ResourceArn: "STRING_VALUE", // required + * }; + * const command = new ListTagsForResourceCommand(input); + * const response = await client.send(command); + * // { // ListTagsForResourceResponse + * // Tags: [ // Tags + * // { // TagEntry + * // Key: "STRING_VALUE", + * // Value: "STRING_VALUE", + * // }, + * // ], + * // }; + * + * ``` + * + * @param ListTagsForResourceCommandInput - {@link ListTagsForResourceCommandInput} + * @returns {@link ListTagsForResourceCommandOutput} + * @see {@link ListTagsForResourceCommandInput} for command's `input` shape. + * @see {@link ListTagsForResourceCommandOutput} for command's `response` shape. + * @see {@link SSMQuickSetupClientResolvedConfig | config} for SSMQuickSetupClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

The requester has insufficient permissions to perform the operation.

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

Another request is being processed. Wait a few minutes and try again.

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

An error occurred on the server side.

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

The resource couldn't be found. Check the ID or name and try again.

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

The request or operation exceeds the maximum allowed request rate per Amazon Web Services account and Amazon Web Services Region.

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

The request is invalid. Verify the values provided for the request parameters are + * accurate.

+ * + * @throws {@link SSMQuickSetupServiceException} + *

Base exception class for all service exceptions from SSMQuickSetup service.

+ * + * @public + */ +export class ListTagsForResourceCommand extends $Command + .classBuilder< + ListTagsForResourceCommandInput, + ListTagsForResourceCommandOutput, + SSMQuickSetupClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: SSMQuickSetupClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("QuickSetup", "ListTagsForResource", {}) + .n("SSMQuickSetupClient", "ListTagsForResourceCommand") + .f(void 0, ListTagsForResourceResponseFilterSensitiveLog) + .ser(se_ListTagsForResourceCommand) + .de(de_ListTagsForResourceCommand) + .build() {} diff --git a/clients/client-ssm-quicksetup/src/commands/TagResourceCommand.ts b/clients/client-ssm-quicksetup/src/commands/TagResourceCommand.ts new file mode 100644 index 000000000000..7fdb94961ac6 --- /dev/null +++ b/clients/client-ssm-quicksetup/src/commands/TagResourceCommand.ts @@ -0,0 +1,102 @@ +// 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 { commonParams } from "../endpoint/EndpointParameters"; +import { TagResourceInput, TagResourceInputFilterSensitiveLog } from "../models/models_0"; +import { de_TagResourceCommand, se_TagResourceCommand } from "../protocols/Aws_restJson1"; +import { ServiceInputTypes, ServiceOutputTypes, SSMQuickSetupClientResolvedConfig } from "../SSMQuickSetupClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link TagResourceCommand}. + */ +export interface TagResourceCommandInput extends TagResourceInput {} +/** + * @public + * + * The output of {@link TagResourceCommand}. + */ +export interface TagResourceCommandOutput extends __MetadataBearer {} + +/** + *

Assigns key-value pairs of metadata to Amazon Web Services resources.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { SSMQuickSetupClient, TagResourceCommand } from "@aws-sdk/client-ssm-quicksetup"; // ES Modules import + * // const { SSMQuickSetupClient, TagResourceCommand } = require("@aws-sdk/client-ssm-quicksetup"); // CommonJS import + * const client = new SSMQuickSetupClient(config); + * const input = { // TagResourceInput + * ResourceArn: "STRING_VALUE", // required + * Tags: { // TagsMap // required + * "": "STRING_VALUE", + * }, + * }; + * const command = new TagResourceCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param TagResourceCommandInput - {@link TagResourceCommandInput} + * @returns {@link TagResourceCommandOutput} + * @see {@link TagResourceCommandInput} for command's `input` shape. + * @see {@link TagResourceCommandOutput} for command's `response` shape. + * @see {@link SSMQuickSetupClientResolvedConfig | config} for SSMQuickSetupClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

The requester has insufficient permissions to perform the operation.

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

Another request is being processed. Wait a few minutes and try again.

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

An error occurred on the server side.

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

The resource couldn't be found. Check the ID or name and try again.

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

The request or operation exceeds the maximum allowed request rate per Amazon Web Services account and Amazon Web Services Region.

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

The request is invalid. Verify the values provided for the request parameters are + * accurate.

+ * + * @throws {@link SSMQuickSetupServiceException} + *

Base exception class for all service exceptions from SSMQuickSetup service.

+ * + * @public + */ +export class TagResourceCommand extends $Command + .classBuilder< + TagResourceCommandInput, + TagResourceCommandOutput, + SSMQuickSetupClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: SSMQuickSetupClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("QuickSetup", "TagResource", {}) + .n("SSMQuickSetupClient", "TagResourceCommand") + .f(TagResourceInputFilterSensitiveLog, void 0) + .ser(se_TagResourceCommand) + .de(de_TagResourceCommand) + .build() {} diff --git a/clients/client-ssm-quicksetup/src/commands/UntagResourceCommand.ts b/clients/client-ssm-quicksetup/src/commands/UntagResourceCommand.ts new file mode 100644 index 000000000000..a40cc7dab5a4 --- /dev/null +++ b/clients/client-ssm-quicksetup/src/commands/UntagResourceCommand.ts @@ -0,0 +1,102 @@ +// 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 { commonParams } from "../endpoint/EndpointParameters"; +import { UntagResourceInput } from "../models/models_0"; +import { de_UntagResourceCommand, se_UntagResourceCommand } from "../protocols/Aws_restJson1"; +import { ServiceInputTypes, ServiceOutputTypes, SSMQuickSetupClientResolvedConfig } from "../SSMQuickSetupClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link UntagResourceCommand}. + */ +export interface UntagResourceCommandInput extends UntagResourceInput {} +/** + * @public + * + * The output of {@link UntagResourceCommand}. + */ +export interface UntagResourceCommandOutput extends __MetadataBearer {} + +/** + *

Removes tags from the specified resource.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { SSMQuickSetupClient, UntagResourceCommand } from "@aws-sdk/client-ssm-quicksetup"; // ES Modules import + * // const { SSMQuickSetupClient, UntagResourceCommand } = require("@aws-sdk/client-ssm-quicksetup"); // CommonJS import + * const client = new SSMQuickSetupClient(config); + * const input = { // UntagResourceInput + * 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 SSMQuickSetupClientResolvedConfig | config} for SSMQuickSetupClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

The requester has insufficient permissions to perform the operation.

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

Another request is being processed. Wait a few minutes and try again.

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

An error occurred on the server side.

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

The resource couldn't be found. Check the ID or name and try again.

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

The request or operation exceeds the maximum allowed request rate per Amazon Web Services account and Amazon Web Services Region.

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

The request is invalid. Verify the values provided for the request parameters are + * accurate.

+ * + * @throws {@link SSMQuickSetupServiceException} + *

Base exception class for all service exceptions from SSMQuickSetup service.

+ * + * @public + */ +export class UntagResourceCommand extends $Command + .classBuilder< + UntagResourceCommandInput, + UntagResourceCommandOutput, + SSMQuickSetupClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: SSMQuickSetupClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("QuickSetup", "UntagResource", {}) + .n("SSMQuickSetupClient", "UntagResourceCommand") + .f(void 0, void 0) + .ser(se_UntagResourceCommand) + .de(de_UntagResourceCommand) + .build() {} diff --git a/clients/client-ssm-quicksetup/src/commands/UpdateConfigurationDefinitionCommand.ts b/clients/client-ssm-quicksetup/src/commands/UpdateConfigurationDefinitionCommand.ts new file mode 100644 index 000000000000..8d4839d9f558 --- /dev/null +++ b/clients/client-ssm-quicksetup/src/commands/UpdateConfigurationDefinitionCommand.ts @@ -0,0 +1,109 @@ +// 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 { commonParams } from "../endpoint/EndpointParameters"; +import { UpdateConfigurationDefinitionInput } from "../models/models_0"; +import { + de_UpdateConfigurationDefinitionCommand, + se_UpdateConfigurationDefinitionCommand, +} from "../protocols/Aws_restJson1"; +import { ServiceInputTypes, ServiceOutputTypes, SSMQuickSetupClientResolvedConfig } from "../SSMQuickSetupClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link UpdateConfigurationDefinitionCommand}. + */ +export interface UpdateConfigurationDefinitionCommandInput extends UpdateConfigurationDefinitionInput {} +/** + * @public + * + * The output of {@link UpdateConfigurationDefinitionCommand}. + */ +export interface UpdateConfigurationDefinitionCommandOutput extends __MetadataBearer {} + +/** + *

Updates a Quick Setup configuration definition.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { SSMQuickSetupClient, UpdateConfigurationDefinitionCommand } from "@aws-sdk/client-ssm-quicksetup"; // ES Modules import + * // const { SSMQuickSetupClient, UpdateConfigurationDefinitionCommand } = require("@aws-sdk/client-ssm-quicksetup"); // CommonJS import + * const client = new SSMQuickSetupClient(config); + * const input = { // UpdateConfigurationDefinitionInput + * ManagerArn: "STRING_VALUE", // required + * Id: "STRING_VALUE", // required + * TypeVersion: "STRING_VALUE", + * Parameters: { // ConfigurationParametersMap + * "": "STRING_VALUE", + * }, + * LocalDeploymentExecutionRoleName: "STRING_VALUE", + * LocalDeploymentAdministrationRoleArn: "STRING_VALUE", + * }; + * const command = new UpdateConfigurationDefinitionCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param UpdateConfigurationDefinitionCommandInput - {@link UpdateConfigurationDefinitionCommandInput} + * @returns {@link UpdateConfigurationDefinitionCommandOutput} + * @see {@link UpdateConfigurationDefinitionCommandInput} for command's `input` shape. + * @see {@link UpdateConfigurationDefinitionCommandOutput} for command's `response` shape. + * @see {@link SSMQuickSetupClientResolvedConfig | config} for SSMQuickSetupClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

The requester has insufficient permissions to perform the operation.

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

Another request is being processed. Wait a few minutes and try again.

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

An error occurred on the server side.

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

The resource couldn't be found. Check the ID or name and try again.

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

The request or operation exceeds the maximum allowed request rate per Amazon Web Services account and Amazon Web Services Region.

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

The request is invalid. Verify the values provided for the request parameters are + * accurate.

+ * + * @throws {@link SSMQuickSetupServiceException} + *

Base exception class for all service exceptions from SSMQuickSetup service.

+ * + * @public + */ +export class UpdateConfigurationDefinitionCommand extends $Command + .classBuilder< + UpdateConfigurationDefinitionCommandInput, + UpdateConfigurationDefinitionCommandOutput, + SSMQuickSetupClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: SSMQuickSetupClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("QuickSetup", "UpdateConfigurationDefinition", {}) + .n("SSMQuickSetupClient", "UpdateConfigurationDefinitionCommand") + .f(void 0, void 0) + .ser(se_UpdateConfigurationDefinitionCommand) + .de(de_UpdateConfigurationDefinitionCommand) + .build() {} diff --git a/clients/client-ssm-quicksetup/src/commands/UpdateConfigurationManagerCommand.ts b/clients/client-ssm-quicksetup/src/commands/UpdateConfigurationManagerCommand.ts new file mode 100644 index 000000000000..f7ebd25e0923 --- /dev/null +++ b/clients/client-ssm-quicksetup/src/commands/UpdateConfigurationManagerCommand.ts @@ -0,0 +1,101 @@ +// 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 { commonParams } from "../endpoint/EndpointParameters"; +import { UpdateConfigurationManagerInput } from "../models/models_0"; +import { de_UpdateConfigurationManagerCommand, se_UpdateConfigurationManagerCommand } from "../protocols/Aws_restJson1"; +import { ServiceInputTypes, ServiceOutputTypes, SSMQuickSetupClientResolvedConfig } from "../SSMQuickSetupClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link UpdateConfigurationManagerCommand}. + */ +export interface UpdateConfigurationManagerCommandInput extends UpdateConfigurationManagerInput {} +/** + * @public + * + * The output of {@link UpdateConfigurationManagerCommand}. + */ +export interface UpdateConfigurationManagerCommandOutput extends __MetadataBearer {} + +/** + *

Updates a Quick Setup configuration manager.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { SSMQuickSetupClient, UpdateConfigurationManagerCommand } from "@aws-sdk/client-ssm-quicksetup"; // ES Modules import + * // const { SSMQuickSetupClient, UpdateConfigurationManagerCommand } = require("@aws-sdk/client-ssm-quicksetup"); // CommonJS import + * const client = new SSMQuickSetupClient(config); + * const input = { // UpdateConfigurationManagerInput + * ManagerArn: "STRING_VALUE", // required + * Name: "STRING_VALUE", + * Description: "STRING_VALUE", + * }; + * const command = new UpdateConfigurationManagerCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param UpdateConfigurationManagerCommandInput - {@link UpdateConfigurationManagerCommandInput} + * @returns {@link UpdateConfigurationManagerCommandOutput} + * @see {@link UpdateConfigurationManagerCommandInput} for command's `input` shape. + * @see {@link UpdateConfigurationManagerCommandOutput} for command's `response` shape. + * @see {@link SSMQuickSetupClientResolvedConfig | config} for SSMQuickSetupClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

The requester has insufficient permissions to perform the operation.

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

Another request is being processed. Wait a few minutes and try again.

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

An error occurred on the server side.

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

The resource couldn't be found. Check the ID or name and try again.

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

The request or operation exceeds the maximum allowed request rate per Amazon Web Services account and Amazon Web Services Region.

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

The request is invalid. Verify the values provided for the request parameters are + * accurate.

+ * + * @throws {@link SSMQuickSetupServiceException} + *

Base exception class for all service exceptions from SSMQuickSetup service.

+ * + * @public + */ +export class UpdateConfigurationManagerCommand extends $Command + .classBuilder< + UpdateConfigurationManagerCommandInput, + UpdateConfigurationManagerCommandOutput, + SSMQuickSetupClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: SSMQuickSetupClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("QuickSetup", "UpdateConfigurationManager", {}) + .n("SSMQuickSetupClient", "UpdateConfigurationManagerCommand") + .f(void 0, void 0) + .ser(se_UpdateConfigurationManagerCommand) + .de(de_UpdateConfigurationManagerCommand) + .build() {} diff --git a/clients/client-ssm-quicksetup/src/commands/UpdateServiceSettingsCommand.ts b/clients/client-ssm-quicksetup/src/commands/UpdateServiceSettingsCommand.ts new file mode 100644 index 000000000000..b4c62758e77a --- /dev/null +++ b/clients/client-ssm-quicksetup/src/commands/UpdateServiceSettingsCommand.ts @@ -0,0 +1,96 @@ +// 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 { commonParams } from "../endpoint/EndpointParameters"; +import { UpdateServiceSettingsInput } from "../models/models_0"; +import { de_UpdateServiceSettingsCommand, se_UpdateServiceSettingsCommand } from "../protocols/Aws_restJson1"; +import { ServiceInputTypes, ServiceOutputTypes, SSMQuickSetupClientResolvedConfig } from "../SSMQuickSetupClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link UpdateServiceSettingsCommand}. + */ +export interface UpdateServiceSettingsCommandInput extends UpdateServiceSettingsInput {} +/** + * @public + * + * The output of {@link UpdateServiceSettingsCommand}. + */ +export interface UpdateServiceSettingsCommandOutput extends __MetadataBearer {} + +/** + *

Updates settings configured for Quick Setup.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { SSMQuickSetupClient, UpdateServiceSettingsCommand } from "@aws-sdk/client-ssm-quicksetup"; // ES Modules import + * // const { SSMQuickSetupClient, UpdateServiceSettingsCommand } = require("@aws-sdk/client-ssm-quicksetup"); // CommonJS import + * const client = new SSMQuickSetupClient(config); + * const input = { // UpdateServiceSettingsInput + * ExplorerEnablingRoleArn: "STRING_VALUE", + * }; + * const command = new UpdateServiceSettingsCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param UpdateServiceSettingsCommandInput - {@link UpdateServiceSettingsCommandInput} + * @returns {@link UpdateServiceSettingsCommandOutput} + * @see {@link UpdateServiceSettingsCommandInput} for command's `input` shape. + * @see {@link UpdateServiceSettingsCommandOutput} for command's `response` shape. + * @see {@link SSMQuickSetupClientResolvedConfig | config} for SSMQuickSetupClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

The requester has insufficient permissions to perform the operation.

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

Another request is being processed. Wait a few minutes and try again.

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

An error occurred on the server side.

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

The request or operation exceeds the maximum allowed request rate per Amazon Web Services account and Amazon Web Services Region.

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

The request is invalid. Verify the values provided for the request parameters are + * accurate.

+ * + * @throws {@link SSMQuickSetupServiceException} + *

Base exception class for all service exceptions from SSMQuickSetup service.

+ * + * @public + */ +export class UpdateServiceSettingsCommand extends $Command + .classBuilder< + UpdateServiceSettingsCommandInput, + UpdateServiceSettingsCommandOutput, + SSMQuickSetupClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: SSMQuickSetupClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("QuickSetup", "UpdateServiceSettings", {}) + .n("SSMQuickSetupClient", "UpdateServiceSettingsCommand") + .f(void 0, void 0) + .ser(se_UpdateServiceSettingsCommand) + .de(de_UpdateServiceSettingsCommand) + .build() {} diff --git a/clients/client-ssm-quicksetup/src/commands/index.ts b/clients/client-ssm-quicksetup/src/commands/index.ts new file mode 100644 index 000000000000..cf90679c921b --- /dev/null +++ b/clients/client-ssm-quicksetup/src/commands/index.ts @@ -0,0 +1,13 @@ +// smithy-typescript generated code +export * from "./CreateConfigurationManagerCommand"; +export * from "./DeleteConfigurationManagerCommand"; +export * from "./GetConfigurationManagerCommand"; +export * from "./GetServiceSettingsCommand"; +export * from "./ListConfigurationManagersCommand"; +export * from "./ListQuickSetupTypesCommand"; +export * from "./ListTagsForResourceCommand"; +export * from "./TagResourceCommand"; +export * from "./UntagResourceCommand"; +export * from "./UpdateConfigurationDefinitionCommand"; +export * from "./UpdateConfigurationManagerCommand"; +export * from "./UpdateServiceSettingsCommand"; diff --git a/clients/client-ssm-quicksetup/src/endpoint/EndpointParameters.ts b/clients/client-ssm-quicksetup/src/endpoint/EndpointParameters.ts new file mode 100644 index 000000000000..6044fbeb46c3 --- /dev/null +++ b/clients/client-ssm-quicksetup/src/endpoint/EndpointParameters.ts @@ -0,0 +1,41 @@ +// smithy-typescript generated code +import { Endpoint, EndpointParameters as __EndpointParameters, EndpointV2, Provider } from "@smithy/types"; + +/** + * @public + */ +export interface ClientInputEndpointParameters { + region?: string | Provider; + useDualstackEndpoint?: boolean | Provider; + useFipsEndpoint?: boolean | Provider; + endpoint?: string | Provider | Endpoint | Provider | EndpointV2 | Provider; +} + +export type ClientResolvedEndpointParameters = ClientInputEndpointParameters & { + defaultSigningName: string; +}; + +export const resolveClientEndpointParameters = ( + options: T & ClientInputEndpointParameters +): T & ClientResolvedEndpointParameters => { + return { + ...options, + useDualstackEndpoint: options.useDualstackEndpoint ?? false, + useFipsEndpoint: options.useFipsEndpoint ?? false, + defaultSigningName: "ssm-quicksetup", + }; +}; + +export const commonParams = { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, +} as const; + +export interface EndpointParameters extends __EndpointParameters { + Region?: string; + UseDualStack?: boolean; + UseFIPS?: boolean; + Endpoint?: string; +} diff --git a/clients/client-ssm-quicksetup/src/endpoint/endpointResolver.ts b/clients/client-ssm-quicksetup/src/endpoint/endpointResolver.ts new file mode 100644 index 000000000000..26fe4c3775a6 --- /dev/null +++ b/clients/client-ssm-quicksetup/src/endpoint/endpointResolver.ts @@ -0,0 +1,19 @@ +// smithy-typescript generated code +import { awsEndpointFunctions } from "@aws-sdk/util-endpoints"; +import { EndpointV2, Logger } from "@smithy/types"; +import { customEndpointFunctions, EndpointParams, resolveEndpoint } from "@smithy/util-endpoints"; + +import { EndpointParameters } from "./EndpointParameters"; +import { ruleSet } from "./ruleset"; + +export const defaultEndpointResolver = ( + endpointParams: EndpointParameters, + context: { logger?: Logger } = {} +): EndpointV2 => { + return resolveEndpoint(ruleSet, { + endpointParams: endpointParams as EndpointParams, + logger: context.logger, + }); +}; + +customEndpointFunctions.aws = awsEndpointFunctions; diff --git a/clients/client-ssm-quicksetup/src/endpoint/ruleset.ts b/clients/client-ssm-quicksetup/src/endpoint/ruleset.ts new file mode 100644 index 000000000000..bde9f84c330e --- /dev/null +++ b/clients/client-ssm-quicksetup/src/endpoint/ruleset.ts @@ -0,0 +1,32 @@ +// @ts-nocheck +// generated code, do not edit +import { RuleSetObject } from "@smithy/types"; + +/* This file is compressed. Log this object + or see "smithy.rules#endpointRuleSet" + in codegen/sdk-codegen/aws-models/ssm-quicksetup.json */ + +const s="required", +t="fn", +u="argv", +v="ref"; +const a=true, +b="isSet", +c="booleanEquals", +d="error", +e="endpoint", +f="tree", +g="PartitionResult", +h={[s]:false,"type":"String"}, +i={[s]:true,"default":false,"type":"Boolean"}, +j={[v]:"Endpoint"}, +k={[t]:c,[u]:[{[v]:"UseFIPS"},true]}, +l={[t]:c,[u]:[{[v]:"UseDualStack"},true]}, +m={}, +n={[t]:"getAttr",[u]:[{[v]:g},"supportsFIPS"]}, +o={[t]:c,[u]:[true,{[t]:"getAttr",[u]:[{[v]:g},"supportsDualStack"]}]}, +p=[k], +q=[l], +r=[{[v]:"Region"}]; +const _data={version:"1.0",parameters:{Region:h,UseDualStack:i,UseFIPS:i,Endpoint:h},rules:[{conditions:[{[t]:b,[u]:[j]}],rules:[{conditions:p,error:"Invalid Configuration: FIPS and custom endpoint are not supported",type:d},{rules:[{conditions:q,error:"Invalid Configuration: Dualstack and custom endpoint are not supported",type:d},{endpoint:{url:j,properties:m,headers:m},type:e}],type:f}],type:f},{rules:[{conditions:[{[t]:b,[u]:r}],rules:[{conditions:[{[t]:"aws.partition",[u]:r,assign:g}],rules:[{conditions:[k,l],rules:[{conditions:[{[t]:c,[u]:[a,n]},o],rules:[{rules:[{endpoint:{url:"https://ssm-quicksetup-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:m,headers:m},type:e}],type:f}],type:f},{error:"FIPS and DualStack are enabled, but this partition does not support one or both",type:d}],type:f},{conditions:p,rules:[{conditions:[{[t]:c,[u]:[n,a]}],rules:[{rules:[{endpoint:{url:"https://ssm-quicksetup-fips.{Region}.{PartitionResult#dnsSuffix}",properties:m,headers:m},type:e}],type:f}],type:f},{error:"FIPS is enabled but this partition does not support FIPS",type:d}],type:f},{conditions:q,rules:[{conditions:[o],rules:[{rules:[{endpoint:{url:"https://ssm-quicksetup.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:m,headers:m},type:e}],type:f}],type:f},{error:"DualStack is enabled but this partition does not support DualStack",type:d}],type:f},{rules:[{endpoint:{url:"https://ssm-quicksetup.{Region}.{PartitionResult#dnsSuffix}",properties:m,headers:m},type:e}],type:f}],type:f}],type:f},{error:"Invalid Configuration: Missing Region",type:d}],type:f}]}; +export const ruleSet: RuleSetObject = _data; diff --git a/clients/client-ssm-quicksetup/src/extensionConfiguration.ts b/clients/client-ssm-quicksetup/src/extensionConfiguration.ts new file mode 100644 index 000000000000..a2868bb0b447 --- /dev/null +++ b/clients/client-ssm-quicksetup/src/extensionConfiguration.ts @@ -0,0 +1,15 @@ +// smithy-typescript generated code +import { AwsRegionExtensionConfiguration } from "@aws-sdk/types"; +import { HttpHandlerExtensionConfiguration } from "@smithy/protocol-http"; +import { DefaultExtensionConfiguration } from "@smithy/types"; + +import { HttpAuthExtensionConfiguration } from "./auth/httpAuthExtensionConfiguration"; + +/** + * @internal + */ +export interface SSMQuickSetupExtensionConfiguration + extends HttpHandlerExtensionConfiguration, + DefaultExtensionConfiguration, + AwsRegionExtensionConfiguration, + HttpAuthExtensionConfiguration {} diff --git a/clients/client-ssm-quicksetup/src/index.ts b/clients/client-ssm-quicksetup/src/index.ts new file mode 100644 index 000000000000..e1453f46d3d4 --- /dev/null +++ b/clients/client-ssm-quicksetup/src/index.ts @@ -0,0 +1,19 @@ +// smithy-typescript generated code +/* eslint-disable */ +/** + *

Quick Setup helps you quickly configure frequently used services and features with + * recommended best practices. Quick Setup simplifies setting up services, including + * Systems Manager, by automating common or recommended tasks.

+ * + * @packageDocumentation + */ +export * from "./SSMQuickSetupClient"; +export * from "./SSMQuickSetup"; +export { ClientInputEndpointParameters } from "./endpoint/EndpointParameters"; +export type { RuntimeExtension } from "./runtimeExtensions"; +export type { SSMQuickSetupExtensionConfiguration } from "./extensionConfiguration"; +export * from "./commands"; +export * from "./pagination"; +export * from "./models"; + +export { SSMQuickSetupServiceException } from "./models/SSMQuickSetupServiceException"; diff --git a/clients/client-ssm-quicksetup/src/models/SSMQuickSetupServiceException.ts b/clients/client-ssm-quicksetup/src/models/SSMQuickSetupServiceException.ts new file mode 100644 index 000000000000..5fdf5fb29204 --- /dev/null +++ b/clients/client-ssm-quicksetup/src/models/SSMQuickSetupServiceException.ts @@ -0,0 +1,24 @@ +// smithy-typescript generated code +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@smithy/smithy-client"; + +export type { __ServiceExceptionOptions }; + +export { __ServiceException }; + +/** + * @public + * + * Base exception class for all service exceptions from SSMQuickSetup service. + */ +export class SSMQuickSetupServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SSMQuickSetupServiceException.prototype); + } +} diff --git a/clients/client-ssm-quicksetup/src/models/index.ts b/clients/client-ssm-quicksetup/src/models/index.ts new file mode 100644 index 000000000000..9eaceb12865f --- /dev/null +++ b/clients/client-ssm-quicksetup/src/models/index.ts @@ -0,0 +1,2 @@ +// smithy-typescript generated code +export * from "./models_0"; diff --git a/clients/client-ssm-quicksetup/src/models/models_0.ts b/clients/client-ssm-quicksetup/src/models/models_0.ts new file mode 100644 index 000000000000..07ffaab80232 --- /dev/null +++ b/clients/client-ssm-quicksetup/src/models/models_0.ts @@ -0,0 +1,2163 @@ +// smithy-typescript generated code +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@smithy/smithy-client"; + +import { SSMQuickSetupServiceException as __BaseException } from "./SSMQuickSetupServiceException"; + +/** + *

The requester has insufficient permissions to perform the operation.

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

The definition of a Quick Setup configuration.

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

The type of the Quick Setup configuration.

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

A list of key-value pairs containing the required parameters for the configuration + * type.

+ * @public + */ + Parameters: Record | undefined; + + /** + *

The version of the Quick Setup type used.

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

The name of the IAM role used to deploy local + * configurations.

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

The ARN of the IAM role used to administrate local configuration + * deployments.

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

The ID of the configuration definition.

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

Defines the preferences and options for a configuration definition.

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

The type of the Quick Setup configuration.

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

The parameters for the configuration definition type. Parameters for configuration + * definitions vary based the configuration type. The following tables outline the + * parameters for each configuration type.

+ *
+ *
OpsCenter (Type: Amazon Web ServicesQuickSetupType-SSMOpsCenter)
+ *
+ *
    + *
  • + *

    + * DelegatedAccountId + *

    + *
      + *
    • + *

      Description: (Required) The ID of the + * delegated administrator account.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetOrganizationalUnits + *

    + *
      + *
    • + *

      Description: (Required) A comma separated + * list of organizational units (OUs) you want to + * deploy the configuration to.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetRegions + *

    + *
      + *
    • + *

      Description: (Required) A comma separated + * list of Amazon Web Services Regions you want to + * deploy the configuration to.

      + *
    • + *
    + *
  • + *
+ *
+ *
Resource Scheduler (Type: Amazon Web ServicesQuickSetupType-Scheduler)
+ *
+ *
    + *
  • + *

    + * TargetTagKey + *

    + *
      + *
    • + *

      Description: (Required) The tag key assigned + * to the instances you want to target.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetTagValue + *

    + *
      + *
    • + *

      Description: (Required) The value of the tag + * key assigned to the instances you want to + * target.

      + *
    • + *
    + *
  • + *
  • + *

    + * ICalendarString + *

    + *
      + *
    • + *

      Description: (Required) An iCalendar + * formatted string containing the schedule you want + * Change Manager to use.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetAccounts + *

    + *
      + *
    • + *

      Description: (Optional) The ID of the + * Amazon Web Services account initiating the + * configuration deployment. You only need to provide + * a value for this parameter if you want to deploy + * the configuration locally. A value must be + * provided for either TargetAccounts or + * TargetOrganizationalUnits.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetOrganizationalUnits + *

    + *
      + *
    • + *

      Description: (Optional) A comma separated + * list of organizational units (OUs) you want to + * deploy the configuration to.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetRegions + *

    + *
      + *
    • + *

      Description: (Required) A comma separated + * list of Amazon Web Services Regions you want to + * deploy the configuration to.

      + *
    • + *
    + *
  • + *
+ *
+ *
Default Host Management Configuration (Type: Amazon Web ServicesQuickSetupType-DHMC)
+ *
+ *
    + *
  • + *

    + * UpdateSSMAgent + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether the SSM Agent is updated on the + * target instances every 2 weeks. The default value + * is "true".

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetOrganizationalUnits + *

    + *
      + *
    • + *

      Description: (Required) A comma separated + * list of organizational units (OUs) you want to + * deploy the configuration to.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetRegions + *

    + *
      + *
    • + *

      Description: (Required) A comma separated + * list of Amazon Web Services Regions you want to + * deploy the configuration to.

      + *
    • + *
    + *
  • + *
+ *
+ *
Resource Explorer (Type: Amazon Web ServicesQuickSetupType-ResourceExplorer)
+ *
+ *
    + *
  • + *

    + * SelectedAggregatorRegion + *

    + *
      + *
    • + *

      Description: (Required) The Amazon Web Services Region where you want to create the + * aggregator index.

      + *
    • + *
    + *
  • + *
  • + *

    + * ReplaceExistingAggregator + *

    + *
      + *
    • + *

      Description: (Required) A boolean value that + * determines whether to demote an existing + * aggregator if it is in a Region that differs from + * the value you specify for the + * SelectedAggregatorRegion.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetOrganizationalUnits + *

    + *
      + *
    • + *

      Description: (Required) A comma separated + * list of organizational units (OUs) you want to + * deploy the configuration to.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetRegions + *

    + *
      + *
    • + *

      Description: (Required) A comma separated + * list of Amazon Web Services Regions you want to + * deploy the configuration to.

      + *
    • + *
    + *
  • + *
+ *
+ *
Change Manager (Type: Amazon Web ServicesQuickSetupType-SSMChangeMgr)
+ *
+ *
    + *
  • + *

    + * DelegatedAccountId + *

    + *
      + *
    • + *

      Description: (Required) The ID of the + * delegated administrator account.

      + *
    • + *
    + *
  • + *
  • + *

    + * JobFunction + *

    + *
      + *
    • + *

      Description: (Required) The name for the + * Change Manager job function.

      + *
    • + *
    + *
  • + *
  • + *

    + * PermissionType + *

    + *
      + *
    • + *

      Description: (Optional) Specifies whether + * you want to use default administrator permissions + * for the job function role, or provide a custom + * IAM policy. The valid values are + * CustomPermissions and + * AdminPermissions. The default value + * for the parameter is + * CustomerPermissions.

      + *
    • + *
    + *
  • + *
  • + *

    + * CustomPermissions + *

    + *
      + *
    • + *

      Description: (Optional) A JSON string + * containing the IAM policy you want + * your job function to use. You must provide a value + * for this parameter if you specify + * CustomPermissions for the + * PermissionType parameter.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetOrganizationalUnits + *

    + *
      + *
    • + *

      Description: (Required) A comma separated + * list of organizational units (OUs) you want to + * deploy the configuration to.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetRegions + *

    + *
      + *
    • + *

      Description: (Required) A comma separated + * list of Amazon Web Services Regions you want to + * deploy the configuration to.

      + *
    • + *
    + *
  • + *
+ *
+ *
DevOps Guru (Type: Amazon Web ServicesQuickSetupType-DevOpsGuru)
+ *
+ *
    + *
  • + *

    + * AnalyseAllResources + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether DevOps Guru analyzes all + * CloudFormation stacks in the account. The + * default value is "false".

      + *
    • + *
    + *
  • + *
  • + *

    + * EnableSnsNotifications + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether DevOps Guru sends + * notifications when an insight is created. The + * default value is "true".

      + *
    • + *
    + *
  • + *
  • + *

    + * EnableSsmOpsItems + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether DevOps Guru creates an + * OpsCenter OpsItem when an insight is created. The + * default value is "true".

      + *
    • + *
    + *
  • + *
  • + *

    + * EnableDriftRemediation + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether a drift remediation schedule is + * used. The default value is + * "false".

      + *
    • + *
    + *
  • + *
  • + *

    + * RemediationSchedule + *

    + *
      + *
    • + *

      Description: (Optional) A rate expression + * that defines the schedule for drift remediation. + * The valid values are rate(30 days), + * rate(14 days), rate(1 + * days), and none. The default + * value is "none".

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetAccounts + *

    + *
      + *
    • + *

      Description: (Optional) The ID of the + * Amazon Web Services account initiating the + * configuration deployment. You only need to provide + * a value for this parameter if you want to deploy + * the configuration locally. A value must be + * provided for either TargetAccounts or + * TargetOrganizationalUnits.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetOrganizationalUnits + *

    + *
      + *
    • + *

      Description: (Optional) A comma separated + * list of organizational units (OUs) you want to + * deploy the configuration to.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetRegions + *

    + *
      + *
    • + *

      Description: (Required) A comma separated + * list of Amazon Web Services Regions you want to + * deploy the configuration to.

      + *
    • + *
    + *
  • + *
+ *
+ *
Conformance Packs (Type: Amazon Web ServicesQuickSetupType-CFGCPacks)
+ *
+ *
    + *
  • + *

    + * DelegatedAccountId + *

    + *
      + *
    • + *

      Description: (Optional) The ID of the + * delegated administrator account. This parameter is + * required for Organization deployments.

      + *
    • + *
    + *
  • + *
  • + *

    + * RemediationSchedule + *

    + *
      + *
    • + *

      Description: (Optional) A rate expression + * that defines the schedule for drift remediation. + * The valid values are rate(30 days), + * rate(14 days), rate(2 + * days), and none. The default + * value is "none".

      + *
    • + *
    + *
  • + *
  • + *

    + * CPackNames + *

    + *
      + *
    • + *

      Description: (Required) A comma separated + * list of Config conformance + * packs.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetAccounts + *

    + *
      + *
    • + *

      Description: (Optional) The ID of the + * Amazon Web Services account initiating the + * configuration deployment. You only need to provide + * a value for this parameter if you want to deploy + * the configuration locally. A value must be + * provided for either TargetAccounts or + * TargetOrganizationalUnits.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetOrganizationalUnits + *

    + *
      + *
    • + *

      Description: (Optional) The ID of the root + * of your Organization. This configuration type + * doesn't currently support choosing specific OUs. + * The configuration will be deployed to all the OUs + * in the Organization.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetRegions + *

    + *
      + *
    • + *

      Description: (Required) A comma separated + * list of Amazon Web Services Regions you want to + * deploy the configuration to.

      + *
    • + *
    + *
  • + *
+ *
+ *
Config Recording (Type: Amazon Web ServicesQuickSetupType-CFGRecording)
+ *
+ *
    + *
  • + *

    + * RecordAllResources + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether all supported resources are + * recorded. The default value is + * "true".

      + *
    • + *
    + *
  • + *
  • + *

    + * ResourceTypesToRecord + *

    + *
      + *
    • + *

      Description: (Optional) A comma separated + * list of resource types you want to record.

      + *
    • + *
    + *
  • + *
  • + *

    + * RecordGlobalResourceTypes + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether global resources are recorded + * with all resource configurations. The default + * value is "false".

      + *
    • + *
    + *
  • + *
  • + *

    + * GlobalResourceTypesRegion + *

    + *
      + *
    • + *

      Description: (Optional) Determines the + * Amazon Web Services Region where global resources + * are recorded.

      + *
    • + *
    + *
  • + *
  • + *

    + * UseCustomBucket + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether a custom Amazon S3 + * bucket is used for delivery. The default value is + * "false".

      + *
    • + *
    + *
  • + *
  • + *

    + * DeliveryBucketName + *

    + *
      + *
    • + *

      Description: (Optional) The name of the + * Amazon S3 bucket you want Config to deliver configuration snapshots and + * configuration history files to.

      + *
    • + *
    + *
  • + *
  • + *

    + * DeliveryBucketPrefix + *

    + *
      + *
    • + *

      Description: (Optional) The key prefix you + * want to use in the custom Amazon S3 + * bucket.

      + *
    • + *
    + *
  • + *
  • + *

    + * NotificationOptions + *

    + *
      + *
    • + *

      Description: (Optional) Determines the + * notification configuration for the recorder. The + * valid values are NoStreaming, + * UseExistingTopic, and + * CreateTopic. The default value is + * NoStreaming.

      + *
    • + *
    + *
  • + *
  • + *

    + * CustomDeliveryTopicAccountId + *

    + *
      + *
    • + *

      Description: (Optional) The ID of the + * Amazon Web Services account where the Amazon SNS topic you want to use for notifications + * resides. You must specify a value for this + * parameter if you use the + * UseExistingTopic notification + * option.

      + *
    • + *
    + *
  • + *
  • + *

    + * CustomDeliveryTopicName + *

    + *
      + *
    • + *

      Description: (Optional) The name of the + * Amazon SNS topic you want to use for + * notifications. You must specify a value for this + * parameter if you use the + * UseExistingTopic notification + * option.

      + *
    • + *
    + *
  • + *
  • + *

    + * RemediationSchedule + *

    + *
      + *
    • + *

      Description: (Optional) A rate expression + * that defines the schedule for drift remediation. + * The valid values are rate(30 days), + * rate(7 days), rate(1 + * days), and none. The default + * value is "none".

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetAccounts + *

    + *
      + *
    • + *

      Description: (Optional) The ID of the + * Amazon Web Services account initiating the + * configuration deployment. You only need to provide + * a value for this parameter if you want to deploy + * the configuration locally. A value must be + * provided for either TargetAccounts or + * TargetOrganizationalUnits.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetOrganizationalUnits + *

    + *
      + *
    • + *

      Description: (Optional) The ID of the root + * of your Organization. This configuration type + * doesn't currently support choosing specific OUs. + * The configuration will be deployed to all the OUs + * in the Organization.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetRegions + *

    + *
      + *
    • + *

      Description: (Required) A comma separated + * list of Amazon Web Services Regions you want to + * deploy the configuration to.

      + *
    • + *
    + *
  • + *
+ *
+ *
Host Management (Type: Amazon Web ServicesQuickSetupType-SSMHostMgmt)
+ *
+ *
    + *
  • + *

    + * UpdateSSMAgent + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether the SSM Agent is updated on the + * target instances every 2 weeks. The default value + * is "true".

      + *
    • + *
    + *
  • + *
  • + *

    + * UpdateEc2LaunchAgent + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether the EC2 Launch agent is updated + * on the target instances every month. The default + * value is "false".

      + *
    • + *
    + *
  • + *
  • + *

    + * CollectInventory + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether the EC2 Launch agent is updated + * on the target instances every month. The default + * value is "true".

      + *
    • + *
    + *
  • + *
  • + *

    + * ScanInstances + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether the target instances are + * scanned daily for available patches. The default + * value is "true".

      + *
    • + *
    + *
  • + *
  • + *

    + * InstallCloudWatchAgent + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether the Amazon CloudWatch agent + * is installed on the target instances. The default + * value is "false".

      + *
    • + *
    + *
  • + *
  • + *

    + * UpdateCloudWatchAgent + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether the Amazon CloudWatch agent + * is updated on the target instances every month. + * The default value is "false".

      + *
    • + *
    + *
  • + *
  • + *

    + * IsPolicyAttachAllowed + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether Quick Setup attaches policies + * to instances profiles already associated with the + * target instances. The default value is + * "false".

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetType + *

    + *
      + *
    • + *

      Description: (Optional) Determines how + * instances are targeted for local account + * deployments. Don't specify a value for this + * parameter if you're deploying to OUs. The valid + * values are *, + * InstanceIds, + * ResourceGroups, and + * Tags. Use * to target + * all instances in the account.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetInstances + *

    + *
      + *
    • + *

      Description: (Optional) A comma separated + * list of instance IDs. You must provide a value for + * this parameter if you specify + * InstanceIds for the + * TargetType parameter.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetTagKey + *

    + *
      + *
    • + *

      Description: (Optional) The tag key assigned + * to the instances you want to target. You must + * provide a value for this parameter if you specify + * Tags for the TargetType + * parameter.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetTagValue + *

    + *
      + *
    • + *

      Description: (Optional) The value of the tag + * key assigned to the instances you want to target. + * You must provide a value for this parameter if you + * specify Tags for the + * TargetType parameter.

      + *
    • + *
    + *
  • + *
  • + *

    + * ResourceGroupName + *

    + *
      + *
    • + *

      Description: (Optional) The name of the + * resource group associated with the instances you + * want to target. You must provide a value for this + * parameter if you specify + * ResourceGroups for the + * TargetType parameter.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetAccounts + *

    + *
      + *
    • + *

      Description: (Optional) The ID of the + * Amazon Web Services account initiating the + * configuration deployment. You only need to provide + * a value for this parameter if you want to deploy + * the configuration locally. A value must be + * provided for either TargetAccounts or + * TargetOrganizationalUnits.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetOrganizationalUnits + *

    + *
      + *
    • + *

      Description: (Optional) A comma separated + * list of organizational units (OUs) you want to + * deploy the configuration to.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetRegions + *

    + *
      + *
    • + *

      Description: (Required) A comma separated + * list of Amazon Web Services Regions you want to + * deploy the configuration to.

      + *
    • + *
    + *
  • + *
+ *
+ *
Distributor (Type: Amazon Web ServicesQuickSetupType-Distributor)
+ *
+ *
    + *
  • + *

    + * PackagesToInstall + *

    + *
      + *
    • + *

      Description: (Required) A comma separated + * list of packages you want to install on the target + * instances. The valid values are + * AWSEFSTools, AWSCWAgent, + * and AWSEC2LaunchAgent.

      + *
    • + *
    + *
  • + *
  • + *

    + * RemediationSchedule + *

    + *
      + *
    • + *

      Description: (Optional) A rate expression + * that defines the schedule for drift remediation. + * The valid values are rate(30 days), + * rate(14 days), rate(2 + * days), and none. The default + * value is "rate(30 days)".

      + *
    • + *
    + *
  • + *
  • + *

    + * IsPolicyAttachAllowed + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether Quick Setup attaches policies + * to instances profiles already associated with the + * target instances. The default value is + * "false".

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetType + *

    + *
      + *
    • + *

      Description: (Optional) Determines how + * instances are targeted for local account + * deployments. Don't specify a value for this + * parameter if you're deploying to OUs. The valid + * values are *, + * InstanceIds, + * ResourceGroups, and + * Tags. Use * to target + * all instances in the account.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetInstances + *

    + *
      + *
    • + *

      Description: (Optional) A comma separated + * list of instance IDs. You must provide a value for + * this parameter if you specify + * InstanceIds for the + * TargetType parameter.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetTagKey + *

    + *
      + *
    • + *

      Description: (Required) The tag key assigned + * to the instances you want to target. You must + * provide a value for this parameter if you specify + * Tags for the TargetType + * parameter.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetTagValue + *

    + *
      + *
    • + *

      Description: (Required) The value of the tag + * key assigned to the instances you want to target. + * You must provide a value for this parameter if you + * specify Tags for the + * TargetType parameter.

      + *
    • + *
    + *
  • + *
  • + *

    + * ResourceGroupName + *

    + *
      + *
    • + *

      Description: (Required) The name of the + * resource group associated with the instances you + * want to target. You must provide a value for this + * parameter if you specify + * ResourceGroups for the + * TargetType parameter.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetAccounts + *

    + *
      + *
    • + *

      Description: (Optional) The ID of the + * Amazon Web Services account initiating the + * configuration deployment. You only need to provide + * a value for this parameter if you want to deploy + * the configuration locally. A value must be + * provided for either TargetAccounts or + * TargetOrganizationalUnits.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetOrganizationalUnits + *

    + *
      + *
    • + *

      Description: (Optional) A comma separated + * list of organizational units (OUs) you want to + * deploy the configuration to.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetRegions + *

    + *
      + *
    • + *

      Description: (Required) A comma separated + * list of Amazon Web Services Regions you want to + * deploy the configuration to.

      + *
    • + *
    + *
  • + *
+ *
+ *
Patch Policy (Type: Amazon Web ServicesQuickSetupType-PatchPolicy)
+ *
+ *
    + *
  • + *

    + * PatchPolicyName + *

    + *
      + *
    • + *

      Description: (Required) A name for the patch + * policy. The value you provide is applied to target + * Amazon EC2 instances as a tag.

      + *
    • + *
    + *
  • + *
  • + *

    + * SelectedPatchBaselines + *

    + *
      + *
    • + *

      Description: (Required) An array of JSON + * objects containing the information for the patch + * baselines to include in your patch policy.

      + *
    • + *
    + *
  • + *
  • + *

    + * PatchBaselineUseDefault + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether the selected patch baselines + * are all Amazon Web Services provided.

      + *
    • + *
    + *
  • + *
  • + *

    + * ConfigurationOptionsPatchOperation + *

    + *
      + *
    • + *

      Description: (Optional) Determines whether + * target instances scan for available patches, or + * scan and install available patches. The valid + * values are Scan and + * ScanAndInstall. The default value for + * the parameter is Scan.

      + *
    • + *
    + *
  • + *
  • + *

    + * ConfigurationOptionsScanValue + *

    + *
      + *
    • + *

      Description: (Optional) A cron expression + * that is used as the schedule for when instances + * scan for available patches.

      + *
    • + *
    + *
  • + *
  • + *

    + * ConfigurationOptionsInstallValue + *

    + *
      + *
    • + *

      Description: (Optional) A cron expression + * that is used as the schedule for when instances + * install available patches.

      + *
    • + *
    + *
  • + *
  • + *

    + * ConfigurationOptionsScanNextInterval + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether instances should scan for + * available patches at the next cron interval. The + * default value is "false".

      + *
    • + *
    + *
  • + *
  • + *

    + * ConfigurationOptionsInstallNextInterval + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether instances should scan for + * available patches at the next cron interval. The + * default value is "false".

      + *
    • + *
    + *
  • + *
  • + *

    + * RebootOption + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether instances are rebooted after + * patches are installed. The default value is + * "false".

      + *
    • + *
    + *
  • + *
  • + *

    + * IsPolicyAttachAllowed + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether Quick Setup attaches policies + * to instances profiles already associated with the + * target instances. The default value is + * "false".

      + *
    • + *
    + *
  • + *
  • + *

    + * OutputLogEnableS3 + *

    + *
      + *
    • + *

      Description: (Optional) A boolean value that + * determines whether command output logs are sent to + * Amazon S3.

      + *
    • + *
    + *
  • + *
  • + *

    + * OutputS3Location + *

    + *
      + *
    • + *

      Description: (Optional) A JSON string + * containing information about the Amazon S3 + * bucket where you want to store the output details + * of the request.

      + *
        + *
      • + *

        + * OutputS3BucketRegion + *

        + *
          + *
        • + *

          Description: (Optional) The Amazon Web Services Region where the Amazon S3 + * bucket you want Config to deliver + * command output to is located.

          + *
        • + *
        + *
      • + *
      • + *

        + * OutputS3BucketName + *

        + *
          + *
        • + *

          Description: (Optional) The name of the + * Amazon S3 bucket you want Config to deliver command output to.

          + *
        • + *
        + *
      • + *
      • + *

        + * OutputS3KeyPrefix + *

        + *
          + *
        • + *

          Description: (Optional) The key prefix you + * want to use in the custom Amazon S3 + * bucket.

          + *
        • + *
        + *
      • + *
      + *
    • + *
    + *
  • + *
  • + *

    + * TargetType + *

    + *
      + *
    • + *

      Description: (Optional) Determines how + * instances are targeted for local account + * deployments. Don't specify a value for this + * parameter if you're deploying to OUs. The valid + * values are *, + * InstanceIds, + * ResourceGroups, and + * Tags. Use * to target + * all instances in the account.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetInstances + *

    + *
      + *
    • + *

      Description: (Optional) A comma separated + * list of instance IDs. You must provide a value for + * this parameter if you specify + * InstanceIds for the + * TargetType parameter.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetTagKey + *

    + *
      + *
    • + *

      Description: (Required) The tag key assigned + * to the instances you want to target. You must + * provide a value for this parameter if you specify + * Tags for the TargetType + * parameter.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetTagValue + *

    + *
      + *
    • + *

      Description: (Required) The value of the tag + * key assigned to the instances you want to target. + * You must provide a value for this parameter if you + * specify Tags for the + * TargetType parameter.

      + *
    • + *
    + *
  • + *
  • + *

    + * ResourceGroupName + *

    + *
      + *
    • + *

      Description: (Required) The name of the + * resource group associated with the instances you + * want to target. You must provide a value for this + * parameter if you specify + * ResourceGroups for the + * TargetType parameter.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetAccounts + *

    + *
      + *
    • + *

      Description: (Optional) The ID of the + * Amazon Web Services account initiating the + * configuration deployment. You only need to provide + * a value for this parameter if you want to deploy + * the configuration locally. A value must be + * provided for either TargetAccounts or + * TargetOrganizationalUnits.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetOrganizationalUnits + *

    + *
      + *
    • + *

      Description: (Optional) A comma separated + * list of organizational units (OUs) you want to + * deploy the configuration to.

      + *
    • + *
    + *
  • + *
  • + *

    + * TargetRegions + *

    + *
      + *
    • + *

      Description: (Required) A comma separated + * list of Amazon Web Services Regions you want to + * deploy the configuration to.

      + *
    • + *
    + *
  • + *
+ *
+ *
+ * @public + */ + Parameters: Record | undefined; + + /** + *

The version of the Quick Setup type to use.

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

The name of the IAM role used to deploy local + * configurations.

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

The ARN of the IAM role used to administrate local configuration + * deployments.

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

A summarized definition of a Quick Setup configuration definition.

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

The ID of the configuration definition.

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

The type of the Quick Setup configuration used by the configuration + * definition.

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

The version of the Quick Setup type used by the configuration definition.

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

The common parameters and values for the configuration definition.

+ * @public + */ + FirstClassParameters?: Record; +} + +/** + * @public + * @enum + */ +export const Status = { + DELETE_FAILED: "DELETE_FAILED", + DELETING: "DELETING", + DEPLOYING: "DEPLOYING", + FAILED: "FAILED", + INITIALIZING: "INITIALIZING", + NONE: "NONE", + STOPPED: "STOPPED", + STOPPING: "STOPPING", + STOP_FAILED: "STOP_FAILED", + SUCCEEDED: "SUCCEEDED", +} as const; + +/** + * @public + */ +export type Status = (typeof Status)[keyof typeof Status]; + +/** + * @public + * @enum + */ +export const StatusType = { + ASYNC_EXECUTIONS: "AsyncExecutions", + DEPLOYMENT: "Deployment", +} as const; + +/** + * @public + */ +export type StatusType = (typeof StatusType)[keyof typeof StatusType]; + +/** + *

A summarized description of the status.

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

The type of a status summary.

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

The current status.

+ * @public + */ + Status?: Status; + + /** + *

When applicable, returns an informational message relevant to the current status and status type of the status summary object. We don't recommend implementing parsing logic around this value since the messages returned can vary in format.

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

The datetime stamp when the status was last updated.

+ * @public + */ + LastUpdatedAt: Date | undefined; + + /** + *

Details about the status.

+ * @public + */ + StatusDetails?: Record; +} + +/** + *

A summary of a Quick Setup configuration manager.

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

The ARN of the Quick Setup configuration.

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

The description of the configuration.

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

The name of the configuration

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

Summaries of the state of the configuration manager. These summaries include an + * aggregate of the statuses from the configuration definition associated with the + * configuration manager. This includes deployment statuses, association statuses, + * drift statuses, health checks, and more.

+ * @public + */ + StatusSummaries?: StatusSummary[]; + + /** + *

A summary of the Quick Setup configuration definition.

+ * @public + */ + ConfigurationDefinitionSummaries?: ConfigurationDefinitionSummary[]; +} + +/** + *

Another request is being processed. Wait a few minutes and try again.

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

A name for the configuration manager.

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

A description of the configuration manager.

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

The definition of the Quick Setup configuration that the configuration manager + * deploys.

+ * @public + */ + ConfigurationDefinitions: ConfigurationDefinitionInput[] | undefined; + + /** + *

Key-value pairs of metadata to assign to the configuration manager.

+ * @public + */ + Tags?: Record; +} + +/** + * @public + */ +export interface CreateConfigurationManagerOutput { + /** + *

The ARN for the newly created configuration manager.

+ * @public + */ + ManagerArn: string | undefined; +} + +/** + *

An error occurred on the server side.

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

The request or operation exceeds the maximum allowed request rate per Amazon Web Services account and Amazon Web Services Region.

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

The request is invalid. Verify the values provided for the request parameters are + * accurate.

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

The ID of the configuration manager.

+ * @public + */ + ManagerArn: string | undefined; +} + +/** + *

The resource couldn't be found. Check the ID or name and try again.

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

A key-value pair to filter results.

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

The key for the filter.

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

The values for the filter keys.

+ * @public + */ + Values: string[] | undefined; +} + +/** + * @public + */ +export interface GetConfigurationManagerInput { + /** + *

The ARN of the configuration manager.

+ * @public + */ + ManagerArn: string | undefined; +} + +/** + * @public + */ +export interface GetConfigurationManagerOutput { + /** + *

The ARN of the configuration manager.

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

The description of the configuration manager.

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

The name of the configuration manager.

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

The datetime stamp when the configuration manager was created.

+ * @public + */ + CreatedAt?: Date; + + /** + *

The datetime stamp when the configuration manager was last updated.

+ * @public + */ + LastModifiedAt?: Date; + + /** + *

A summary of the state of the configuration manager. This includes deployment + * statuses, association statuses, drift statuses, health checks, and more.

+ * @public + */ + StatusSummaries?: StatusSummary[]; + + /** + *

The configuration definitions association with the configuration manager.

+ * @public + */ + ConfigurationDefinitions?: ConfigurationDefinition[]; + + /** + *

Key-value pairs of metadata to assign to the configuration manager.

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

Settings configured for Quick Setup.

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

The IAM role used to enable Explorer.

+ * @public + */ + ExplorerEnablingRoleArn?: string; +} + +/** + * @public + */ +export interface GetServiceSettingsOutput { + /** + *

Returns details about the settings for Quick Setup in the requesting Amazon Web Services account and Amazon Web Services Region.

+ * @public + */ + ServiceSettings?: ServiceSettings; +} + +/** + * @public + */ +export interface ListConfigurationManagersInput { + /** + *

The token to use when requesting a specific set of items from a list.

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

Specifies the maximum number of configuration managers that are returned by the + * request.

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

Filters the results returned by the request.

+ * @public + */ + Filters?: Filter[]; +} + +/** + * @public + */ +export interface ListConfigurationManagersOutput { + /** + *

The configuration managers returned by the request.

+ * @public + */ + ConfigurationManagersList?: ConfigurationManagerSummary[]; + + /** + *

The token to use when requesting the next set of configuration managers. If there + * are no additional operations to return, the string is empty.

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

Information about the Quick Setup type.

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

The type of the Quick Setup configuration.

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

The latest version number of the configuration.

+ * @public + */ + LatestVersion?: string; +} + +/** + * @public + */ +export interface ListQuickSetupTypesOutput { + /** + *

An array of Quick Setup types.

+ * @public + */ + QuickSetupTypeList?: QuickSetupTypeOutput[]; +} + +/** + * @public + */ +export interface ListTagsForResourceRequest { + /** + *

The ARN of the resource the tag is assigned to.

+ * @public + */ + ResourceArn: string | undefined; +} + +/** + *

Key-value pairs of metadata.

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

The key for the tag.

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

The value for the tag.

+ * @public + */ + Value?: string; +} + +/** + * @public + */ +export interface ListTagsForResourceResponse { + /** + *

Key-value pairs of metadata assigned to the resource.

+ * @public + */ + Tags?: TagEntry[]; +} + +/** + * @public + */ +export interface TagResourceInput { + /** + *

The ARN of the resource to tag.

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

Key-value pairs of metadata to assign to the resource.

+ * @public + */ + Tags: Record | undefined; +} + +/** + * @public + */ +export interface UntagResourceInput { + /** + *

The ARN of the resource to remove tags from.

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

The keys of the tags to remove from the resource.

+ * @public + */ + TagKeys: string[] | undefined; +} + +/** + * @public + */ +export interface UpdateConfigurationDefinitionInput { + /** + *

The ARN of the configuration manager associated with the definition to + * update.

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

The ID of the configuration definition you want to update.

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

The version of the Quick Setup type to use.

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

The parameters for the configuration definition type.

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

The name of the IAM role used to deploy local + * configurations.

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

The ARN of the IAM role used to administrate local configuration + * deployments.

+ * @public + */ + LocalDeploymentAdministrationRoleArn?: string; +} + +/** + * @public + */ +export interface UpdateConfigurationManagerInput { + /** + *

The ARN of the configuration manager.

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

A name for the configuration manager.

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

A description of the configuration manager.

+ * @public + */ + Description?: string; +} + +/** + * @public + */ +export interface UpdateServiceSettingsInput { + /** + *

The IAM role used to enable Explorer.

+ * @public + */ + ExplorerEnablingRoleArn?: string; +} + +/** + * @internal + */ +export const CreateConfigurationManagerInputFilterSensitiveLog = (obj: CreateConfigurationManagerInput): any => ({ + ...obj, + ...(obj.Tags && { Tags: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const GetConfigurationManagerOutputFilterSensitiveLog = (obj: GetConfigurationManagerOutput): any => ({ + ...obj, + ...(obj.Tags && { Tags: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const TagEntryFilterSensitiveLog = (obj: TagEntry): any => ({ + ...obj, +}); + +/** + * @internal + */ +export const ListTagsForResourceResponseFilterSensitiveLog = (obj: ListTagsForResourceResponse): any => ({ + ...obj, + ...(obj.Tags && { Tags: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const TagResourceInputFilterSensitiveLog = (obj: TagResourceInput): any => ({ + ...obj, + ...(obj.Tags && { Tags: SENSITIVE_STRING }), +}); diff --git a/clients/client-ssm-quicksetup/src/pagination/Interfaces.ts b/clients/client-ssm-quicksetup/src/pagination/Interfaces.ts new file mode 100644 index 000000000000..a4e079a0f412 --- /dev/null +++ b/clients/client-ssm-quicksetup/src/pagination/Interfaces.ts @@ -0,0 +1,11 @@ +// smithy-typescript generated code +import { PaginationConfiguration } from "@smithy/types"; + +import { SSMQuickSetupClient } from "../SSMQuickSetupClient"; + +/** + * @public + */ +export interface SSMQuickSetupPaginationConfiguration extends PaginationConfiguration { + client: SSMQuickSetupClient; +} diff --git a/clients/client-ssm-quicksetup/src/pagination/ListConfigurationManagersPaginator.ts b/clients/client-ssm-quicksetup/src/pagination/ListConfigurationManagersPaginator.ts new file mode 100644 index 000000000000..2ddba87dc79f --- /dev/null +++ b/clients/client-ssm-quicksetup/src/pagination/ListConfigurationManagersPaginator.ts @@ -0,0 +1,24 @@ +// smithy-typescript generated code +import { createPaginator } from "@smithy/core"; +import { Paginator } from "@smithy/types"; + +import { + ListConfigurationManagersCommand, + ListConfigurationManagersCommandInput, + ListConfigurationManagersCommandOutput, +} from "../commands/ListConfigurationManagersCommand"; +import { SSMQuickSetupClient } from "../SSMQuickSetupClient"; +import { SSMQuickSetupPaginationConfiguration } from "./Interfaces"; + +/** + * @public + */ +export const paginateListConfigurationManagers: ( + config: SSMQuickSetupPaginationConfiguration, + input: ListConfigurationManagersCommandInput, + ...rest: any[] +) => Paginator = createPaginator< + SSMQuickSetupPaginationConfiguration, + ListConfigurationManagersCommandInput, + ListConfigurationManagersCommandOutput +>(SSMQuickSetupClient, ListConfigurationManagersCommand, "StartingToken", "NextToken", "MaxItems"); diff --git a/clients/client-ssm-quicksetup/src/pagination/index.ts b/clients/client-ssm-quicksetup/src/pagination/index.ts new file mode 100644 index 000000000000..16f3985e3668 --- /dev/null +++ b/clients/client-ssm-quicksetup/src/pagination/index.ts @@ -0,0 +1,3 @@ +// smithy-typescript generated code +export * from "./Interfaces"; +export * from "./ListConfigurationManagersPaginator"; diff --git a/clients/client-ssm-quicksetup/src/protocols/Aws_restJson1.ts b/clients/client-ssm-quicksetup/src/protocols/Aws_restJson1.ts new file mode 100644 index 000000000000..7bfdf158a1df --- /dev/null +++ b/clients/client-ssm-quicksetup/src/protocols/Aws_restJson1.ts @@ -0,0 +1,817 @@ +// smithy-typescript generated code +import { loadRestJsonErrorCode, parseJsonBody as parseBody, parseJsonErrorBody as parseErrorBody } from "@aws-sdk/core"; +import { requestBuilder as rb } from "@smithy/core"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { + _json, + collectBody, + decorateServiceException as __decorateServiceException, + expectNonNull as __expectNonNull, + expectObject as __expectObject, + expectString as __expectString, + extendedEncodeURIComponent as __extendedEncodeURIComponent, + map, + parseRfc3339DateTimeWithOffset as __parseRfc3339DateTimeWithOffset, + resolvedPath as __resolvedPath, + take, + withBaseException, +} from "@smithy/smithy-client"; +import { + Endpoint as __Endpoint, + ResponseMetadata as __ResponseMetadata, + SerdeContext as __SerdeContext, +} from "@smithy/types"; + +import { + CreateConfigurationManagerCommandInput, + CreateConfigurationManagerCommandOutput, +} from "../commands/CreateConfigurationManagerCommand"; +import { + DeleteConfigurationManagerCommandInput, + DeleteConfigurationManagerCommandOutput, +} from "../commands/DeleteConfigurationManagerCommand"; +import { + GetConfigurationManagerCommandInput, + GetConfigurationManagerCommandOutput, +} from "../commands/GetConfigurationManagerCommand"; +import { GetServiceSettingsCommandInput, GetServiceSettingsCommandOutput } from "../commands/GetServiceSettingsCommand"; +import { + ListConfigurationManagersCommandInput, + ListConfigurationManagersCommandOutput, +} from "../commands/ListConfigurationManagersCommand"; +import { + ListQuickSetupTypesCommandInput, + ListQuickSetupTypesCommandOutput, +} from "../commands/ListQuickSetupTypesCommand"; +import { + ListTagsForResourceCommandInput, + ListTagsForResourceCommandOutput, +} from "../commands/ListTagsForResourceCommand"; +import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; +import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; +import { + UpdateConfigurationDefinitionCommandInput, + UpdateConfigurationDefinitionCommandOutput, +} from "../commands/UpdateConfigurationDefinitionCommand"; +import { + UpdateConfigurationManagerCommandInput, + UpdateConfigurationManagerCommandOutput, +} from "../commands/UpdateConfigurationManagerCommand"; +import { + UpdateServiceSettingsCommandInput, + UpdateServiceSettingsCommandOutput, +} from "../commands/UpdateServiceSettingsCommand"; +import { + AccessDeniedException, + ConfigurationDefinitionInput, + ConfigurationManagerSummary, + ConflictException, + Filter, + InternalServerException, + ResourceNotFoundException, + StatusSummary, + ThrottlingException, + ValidationException, +} from "../models/models_0"; +import { SSMQuickSetupServiceException as __BaseException } from "../models/SSMQuickSetupServiceException"; + +/** + * serializeAws_restJson1CreateConfigurationManagerCommand + */ +export const se_CreateConfigurationManagerCommand = async ( + input: CreateConfigurationManagerCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/configurationManager"); + let body: any; + body = JSON.stringify( + take(input, { + ConfigurationDefinitions: (_) => _json(_), + Description: [], + Name: [], + Tags: (_) => _json(_), + }) + ); + b.m("POST").h(headers).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1DeleteConfigurationManagerCommand + */ +export const se_DeleteConfigurationManagerCommand = async ( + input: DeleteConfigurationManagerCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/configurationManager/{ManagerArn}"); + b.p("ManagerArn", () => input.ManagerArn!, "{ManagerArn}", false); + let body: any; + b.m("DELETE").h(headers).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1GetConfigurationManagerCommand + */ +export const se_GetConfigurationManagerCommand = async ( + input: GetConfigurationManagerCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/configurationManager/{ManagerArn}"); + b.p("ManagerArn", () => input.ManagerArn!, "{ManagerArn}", false); + let body: any; + b.m("GET").h(headers).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1GetServiceSettingsCommand + */ +export const se_GetServiceSettingsCommand = async ( + input: GetServiceSettingsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/serviceSettings"); + let body: any; + b.m("GET").h(headers).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1ListConfigurationManagersCommand + */ +export const se_ListConfigurationManagersCommand = async ( + input: ListConfigurationManagersCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/listConfigurationManagers"); + let body: any; + body = JSON.stringify( + take(input, { + Filters: (_) => _json(_), + MaxItems: [], + StartingToken: [], + }) + ); + b.m("POST").h(headers).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1ListQuickSetupTypesCommand + */ +export const se_ListQuickSetupTypesCommand = async ( + input: ListQuickSetupTypesCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/listQuickSetupTypes"); + let body: any; + b.m("GET").h(headers).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1ListTagsForResourceCommand + */ +export const se_ListTagsForResourceCommand = async ( + input: ListTagsForResourceCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/tags/{ResourceArn}"); + b.p("ResourceArn", () => input.ResourceArn!, "{ResourceArn}", false); + let body: any; + b.m("GET").h(headers).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1TagResourceCommand + */ +export const se_TagResourceCommand = async ( + input: TagResourceCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/tags/{ResourceArn}"); + b.p("ResourceArn", () => input.ResourceArn!, "{ResourceArn}", false); + let body: any; + body = JSON.stringify( + take(input, { + Tags: (_) => _json(_), + }) + ); + b.m("PUT").h(headers).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1UntagResourceCommand + */ +export const se_UntagResourceCommand = async ( + input: UntagResourceCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/tags/{ResourceArn}"); + b.p("ResourceArn", () => input.ResourceArn!, "{ResourceArn}", false); + const query: any = map({ + [_tK]: [ + __expectNonNull(input.TagKeys, `TagKeys`) != null, + () => (input[_TK]! || []).map((_entry) => _entry as any), + ], + }); + let body: any; + b.m("DELETE").h(headers).q(query).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1UpdateConfigurationDefinitionCommand + */ +export const se_UpdateConfigurationDefinitionCommand = async ( + input: UpdateConfigurationDefinitionCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/configurationDefinition/{ManagerArn}/{Id}"); + b.p("ManagerArn", () => input.ManagerArn!, "{ManagerArn}", false); + b.p("Id", () => input.Id!, "{Id}", false); + let body: any; + body = JSON.stringify( + take(input, { + LocalDeploymentAdministrationRoleArn: [], + LocalDeploymentExecutionRoleName: [], + Parameters: (_) => _json(_), + TypeVersion: [], + }) + ); + b.m("PUT").h(headers).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1UpdateConfigurationManagerCommand + */ +export const se_UpdateConfigurationManagerCommand = async ( + input: UpdateConfigurationManagerCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/configurationManager/{ManagerArn}"); + b.p("ManagerArn", () => input.ManagerArn!, "{ManagerArn}", false); + let body: any; + body = JSON.stringify( + take(input, { + Description: [], + Name: [], + }) + ); + b.m("PUT").h(headers).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1UpdateServiceSettingsCommand + */ +export const se_UpdateServiceSettingsCommand = async ( + input: UpdateServiceSettingsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/serviceSettings"); + let body: any; + body = JSON.stringify( + take(input, { + ExplorerEnablingRoleArn: [], + }) + ); + b.m("PUT").h(headers).b(body); + return b.build(); +}; + +/** + * deserializeAws_restJson1CreateConfigurationManagerCommand + */ +export const de_CreateConfigurationManagerCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + ManagerArn: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1DeleteConfigurationManagerCommand + */ +export const de_DeleteConfigurationManagerCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + await collectBody(output.body, context); + return contents; +}; + +/** + * deserializeAws_restJson1GetConfigurationManagerCommand + */ +export const de_GetConfigurationManagerCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + ConfigurationDefinitions: _json, + CreatedAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + Description: __expectString, + LastModifiedAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + ManagerArn: __expectString, + Name: __expectString, + StatusSummaries: (_) => de_StatusSummariesList(_, context), + Tags: _json, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1GetServiceSettingsCommand + */ +export const de_GetServiceSettingsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + ServiceSettings: _json, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListConfigurationManagersCommand + */ +export const de_ListConfigurationManagersCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + ConfigurationManagersList: (_) => de_ConfigurationManagerList(_, context), + NextToken: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListQuickSetupTypesCommand + */ +export const de_ListQuickSetupTypesCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + QuickSetupTypeList: _json, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListTagsForResourceCommand + */ +export const de_ListTagsForResourceCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + Tags: _json, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1TagResourceCommand + */ +export const de_TagResourceCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + await collectBody(output.body, context); + return contents; +}; + +/** + * deserializeAws_restJson1UntagResourceCommand + */ +export const de_UntagResourceCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + await collectBody(output.body, context); + return contents; +}; + +/** + * deserializeAws_restJson1UpdateConfigurationDefinitionCommand + */ +export const de_UpdateConfigurationDefinitionCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + await collectBody(output.body, context); + return contents; +}; + +/** + * deserializeAws_restJson1UpdateConfigurationManagerCommand + */ +export const de_UpdateConfigurationManagerCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + await collectBody(output.body, context); + return contents; +}; + +/** + * deserializeAws_restJson1UpdateServiceSettingsCommand + */ +export const de_UpdateServiceSettingsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + await collectBody(output.body, context); + return contents; +}; + +/** + * deserialize_Aws_restJson1CommandError + */ +const de_CommandError = async (output: __HttpResponse, context: __SerdeContext): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "AccessDeniedException": + case "com.amazonaws.ssmquicksetup#AccessDeniedException": + throw await de_AccessDeniedExceptionRes(parsedOutput, context); + case "ConflictException": + case "com.amazonaws.ssmquicksetup#ConflictException": + throw await de_ConflictExceptionRes(parsedOutput, context); + case "InternalServerException": + case "com.amazonaws.ssmquicksetup#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.ssmquicksetup#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.ssmquicksetup#ValidationException": + throw await de_ValidationExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.ssmquicksetup#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }) as never; + } +}; + +const throwDefaultError = withBaseException(__BaseException); +/** + * deserializeAws_restJson1AccessDeniedExceptionRes + */ +const de_AccessDeniedExceptionRes = async ( + parsedOutput: any, + context: __SerdeContext +): Promise => { + const contents: any = map({}); + const data: any = parsedOutput.body; + const doc = take(data, { + Message: __expectString, + }); + Object.assign(contents, doc); + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); +}; + +/** + * deserializeAws_restJson1ConflictExceptionRes + */ +const de_ConflictExceptionRes = async (parsedOutput: any, context: __SerdeContext): Promise => { + const contents: any = map({}); + const data: any = parsedOutput.body; + const doc = take(data, { + Message: __expectString, + }); + Object.assign(contents, doc); + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); +}; + +/** + * deserializeAws_restJson1InternalServerExceptionRes + */ +const de_InternalServerExceptionRes = async ( + parsedOutput: any, + context: __SerdeContext +): Promise => { + const contents: any = map({}); + const data: any = parsedOutput.body; + const doc = take(data, { + Message: __expectString, + }); + Object.assign(contents, doc); + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); +}; + +/** + * deserializeAws_restJson1ResourceNotFoundExceptionRes + */ +const de_ResourceNotFoundExceptionRes = async ( + parsedOutput: any, + context: __SerdeContext +): Promise => { + const contents: any = map({}); + const data: any = parsedOutput.body; + const doc = take(data, { + Message: __expectString, + }); + Object.assign(contents, doc); + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); +}; + +/** + * deserializeAws_restJson1ThrottlingExceptionRes + */ +const de_ThrottlingExceptionRes = async (parsedOutput: any, context: __SerdeContext): Promise => { + const contents: any = map({}); + const data: any = parsedOutput.body; + const doc = take(data, { + Message: __expectString, + }); + Object.assign(contents, doc); + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); +}; + +/** + * deserializeAws_restJson1ValidationExceptionRes + */ +const de_ValidationExceptionRes = async (parsedOutput: any, context: __SerdeContext): Promise => { + const contents: any = map({}); + const data: any = parsedOutput.body; + const doc = take(data, { + Message: __expectString, + }); + Object.assign(contents, doc); + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); +}; + +// se_ConfigurationDefinitionInput omitted. + +// se_ConfigurationDefinitionsInputList omitted. + +// se_ConfigurationParametersMap omitted. + +// se_Filter omitted. + +// se_FiltersList omitted. + +// se_FilterValues omitted. + +// se_TagsMap omitted. + +// de_ConfigurationDefinition omitted. + +// de_ConfigurationDefinitionsList omitted. + +// de_ConfigurationDefinitionSummariesList omitted. + +// de_ConfigurationDefinitionSummary omitted. + +/** + * deserializeAws_restJson1ConfigurationManagerList + */ +const de_ConfigurationManagerList = (output: any, context: __SerdeContext): ConfigurationManagerSummary[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_ConfigurationManagerSummary(entry, context); + }); + return retVal; +}; + +/** + * deserializeAws_restJson1ConfigurationManagerSummary + */ +const de_ConfigurationManagerSummary = (output: any, context: __SerdeContext): ConfigurationManagerSummary => { + return take(output, { + ConfigurationDefinitionSummaries: _json, + Description: __expectString, + ManagerArn: __expectString, + Name: __expectString, + StatusSummaries: (_: any) => de_StatusSummariesList(_, context), + }) as any; +}; + +// de_ConfigurationParametersMap omitted. + +// de_QuickSetupTypeList omitted. + +// de_QuickSetupTypeOutput omitted. + +// de_ServiceSettings omitted. + +// de_StatusDetails omitted. + +/** + * deserializeAws_restJson1StatusSummariesList + */ +const de_StatusSummariesList = (output: any, context: __SerdeContext): StatusSummary[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_StatusSummary(entry, context); + }); + return retVal; +}; + +/** + * deserializeAws_restJson1StatusSummary + */ +const de_StatusSummary = (output: any, context: __SerdeContext): StatusSummary => { + return take(output, { + LastUpdatedAt: (_: any) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)), + Status: __expectString, + StatusDetails: _json, + StatusMessage: __expectString, + StatusType: __expectString, + }) as any; +}; + +// de_TagEntry omitted. + +// de_Tags omitted. + +// de_TagsMap omitted. + +const deserializeMetadata = (output: __HttpResponse): __ResponseMetadata => ({ + httpStatusCode: output.statusCode, + requestId: + output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"], + extendedRequestId: output.headers["x-amz-id-2"], + cfId: output.headers["x-amz-cf-id"], +}); + +// Encode Uint8Array data into string with utf-8. +const collectBodyString = (streamBody: any, context: __SerdeContext): Promise => + collectBody(streamBody, context).then((body) => context.utf8Encoder(body)); + +const isSerializableHeaderValue = (value: any): boolean => + value !== undefined && + value !== null && + value !== "" && + (!Object.getOwnPropertyNames(value).includes("length") || value.length != 0) && + (!Object.getOwnPropertyNames(value).includes("size") || value.size != 0); + +const _TK = "TagKeys"; +const _tK = "tagKeys"; diff --git a/clients/client-ssm-quicksetup/src/runtimeConfig.browser.ts b/clients/client-ssm-quicksetup/src/runtimeConfig.browser.ts new file mode 100644 index 000000000000..afac057877dc --- /dev/null +++ b/clients/client-ssm-quicksetup/src/runtimeConfig.browser.ts @@ -0,0 +1,44 @@ +// smithy-typescript generated code +// @ts-ignore: package.json will be imported from dist folders +import packageInfo from "../package.json"; // eslint-disable-line + +import { Sha256 } from "@aws-crypto/sha256-browser"; +import { defaultUserAgent } from "@aws-sdk/util-user-agent-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@smithy/config-resolver"; +import { FetchHttpHandler as RequestHandler, streamCollector } from "@smithy/fetch-http-handler"; +import { invalidProvider } from "@smithy/invalid-dependency"; +import { calculateBodyLength } from "@smithy/util-body-length-browser"; +import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@smithy/util-retry"; +import { SSMQuickSetupClientConfig } from "./SSMQuickSetupClient"; +import { getRuntimeConfig as getSharedRuntimeConfig } from "./runtimeConfig.shared"; +import { loadConfigsForDefaultMode } from "@smithy/smithy-client"; +import { resolveDefaultsModeConfig } from "@smithy/util-defaults-mode-browser"; + +/** + * @internal + */ +export const getRuntimeConfig = (config: SSMQuickSetupClientConfig) => { + const defaultsMode = resolveDefaultsModeConfig(config); + const defaultConfigProvider = () => defaultsMode().then(loadConfigsForDefaultMode); + const clientSharedValues = getSharedRuntimeConfig(config); + return { + ...clientSharedValues, + ...config, + runtime: "browser", + defaultsMode, + bodyLengthChecker: config?.bodyLengthChecker ?? calculateBodyLength, + credentialDefaultProvider: + config?.credentialDefaultProvider ?? ((_: unknown) => () => Promise.reject(new Error("Credential is missing"))), + defaultUserAgentProvider: + config?.defaultUserAgentProvider ?? + defaultUserAgent({ serviceId: clientSharedValues.serviceId, clientVersion: packageInfo.version }), + maxAttempts: config?.maxAttempts ?? DEFAULT_MAX_ATTEMPTS, + region: config?.region ?? invalidProvider("Region is missing"), + requestHandler: RequestHandler.create(config?.requestHandler ?? defaultConfigProvider), + retryMode: config?.retryMode ?? (async () => (await defaultConfigProvider()).retryMode || DEFAULT_RETRY_MODE), + sha256: config?.sha256 ?? Sha256, + streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), + }; +}; diff --git a/clients/client-ssm-quicksetup/src/runtimeConfig.native.ts b/clients/client-ssm-quicksetup/src/runtimeConfig.native.ts new file mode 100644 index 000000000000..540f12cf3774 --- /dev/null +++ b/clients/client-ssm-quicksetup/src/runtimeConfig.native.ts @@ -0,0 +1,18 @@ +// smithy-typescript generated code +import { Sha256 } from "@aws-crypto/sha256-js"; + +import { getRuntimeConfig as getBrowserRuntimeConfig } from "./runtimeConfig.browser"; +import { SSMQuickSetupClientConfig } from "./SSMQuickSetupClient"; + +/** + * @internal + */ +export const getRuntimeConfig = (config: SSMQuickSetupClientConfig) => { + const browserDefaults = getBrowserRuntimeConfig(config); + return { + ...browserDefaults, + ...config, + runtime: "react-native", + sha256: config?.sha256 ?? Sha256, + }; +}; diff --git a/clients/client-ssm-quicksetup/src/runtimeConfig.shared.ts b/clients/client-ssm-quicksetup/src/runtimeConfig.shared.ts new file mode 100644 index 000000000000..be220cf46f1f --- /dev/null +++ b/clients/client-ssm-quicksetup/src/runtimeConfig.shared.ts @@ -0,0 +1,38 @@ +// smithy-typescript generated code +import { AwsSdkSigV4Signer } from "@aws-sdk/core"; +import { NoOpLogger } from "@smithy/smithy-client"; +import { IdentityProviderConfig } from "@smithy/types"; +import { parseUrl } from "@smithy/url-parser"; +import { fromBase64, toBase64 } from "@smithy/util-base64"; +import { fromUtf8, toUtf8 } from "@smithy/util-utf8"; + +import { defaultSSMQuickSetupHttpAuthSchemeProvider } from "./auth/httpAuthSchemeProvider"; +import { defaultEndpointResolver } from "./endpoint/endpointResolver"; +import { SSMQuickSetupClientConfig } from "./SSMQuickSetupClient"; + +/** + * @internal + */ +export const getRuntimeConfig = (config: SSMQuickSetupClientConfig) => { + return { + apiVersion: "2018-05-10", + base64Decoder: config?.base64Decoder ?? fromBase64, + base64Encoder: config?.base64Encoder ?? toBase64, + disableHostPrefix: config?.disableHostPrefix ?? false, + endpointProvider: config?.endpointProvider ?? defaultEndpointResolver, + extensions: config?.extensions ?? [], + httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? defaultSSMQuickSetupHttpAuthSchemeProvider, + httpAuthSchemes: config?.httpAuthSchemes ?? [ + { + schemeId: "aws.auth#sigv4", + identityProvider: (ipc: IdentityProviderConfig) => ipc.getIdentityProvider("aws.auth#sigv4"), + signer: new AwsSdkSigV4Signer(), + }, + ], + logger: config?.logger ?? new NoOpLogger(), + serviceId: config?.serviceId ?? "SSM QuickSetup", + urlParser: config?.urlParser ?? parseUrl, + utf8Decoder: config?.utf8Decoder ?? fromUtf8, + utf8Encoder: config?.utf8Encoder ?? toUtf8, + }; +}; diff --git a/clients/client-ssm-quicksetup/src/runtimeConfig.ts b/clients/client-ssm-quicksetup/src/runtimeConfig.ts new file mode 100644 index 000000000000..8c89c811e184 --- /dev/null +++ b/clients/client-ssm-quicksetup/src/runtimeConfig.ts @@ -0,0 +1,59 @@ +// smithy-typescript generated code +// @ts-ignore: package.json will be imported from dist folders +import packageInfo from "../package.json"; // eslint-disable-line + +import { emitWarningIfUnsupportedVersion as awsCheckVersion } from "@aws-sdk/core"; +import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; +import { defaultUserAgent } from "@aws-sdk/util-user-agent-node"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@smithy/config-resolver"; +import { Hash } from "@smithy/hash-node"; +import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@smithy/middleware-retry"; +import { loadConfig as loadNodeConfig } from "@smithy/node-config-provider"; +import { NodeHttpHandler as RequestHandler, streamCollector } from "@smithy/node-http-handler"; +import { calculateBodyLength } from "@smithy/util-body-length-node"; +import { DEFAULT_RETRY_MODE } from "@smithy/util-retry"; +import { SSMQuickSetupClientConfig } from "./SSMQuickSetupClient"; +import { getRuntimeConfig as getSharedRuntimeConfig } from "./runtimeConfig.shared"; +import { loadConfigsForDefaultMode } from "@smithy/smithy-client"; +import { resolveDefaultsModeConfig } from "@smithy/util-defaults-mode-node"; +import { emitWarningIfUnsupportedVersion } from "@smithy/smithy-client"; + +/** + * @internal + */ +export const getRuntimeConfig = (config: SSMQuickSetupClientConfig) => { + emitWarningIfUnsupportedVersion(process.version); + const defaultsMode = resolveDefaultsModeConfig(config); + const defaultConfigProvider = () => defaultsMode().then(loadConfigsForDefaultMode); + const clientSharedValues = getSharedRuntimeConfig(config); + awsCheckVersion(process.version); + return { + ...clientSharedValues, + ...config, + runtime: "node", + defaultsMode, + bodyLengthChecker: config?.bodyLengthChecker ?? calculateBodyLength, + credentialDefaultProvider: config?.credentialDefaultProvider ?? credentialDefaultProvider, + defaultUserAgentProvider: + config?.defaultUserAgentProvider ?? + defaultUserAgent({ serviceId: clientSharedValues.serviceId, clientVersion: packageInfo.version }), + maxAttempts: config?.maxAttempts ?? loadNodeConfig(NODE_MAX_ATTEMPT_CONFIG_OPTIONS), + region: config?.region ?? loadNodeConfig(NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS), + requestHandler: RequestHandler.create(config?.requestHandler ?? defaultConfigProvider), + retryMode: + config?.retryMode ?? + loadNodeConfig({ + ...NODE_RETRY_MODE_CONFIG_OPTIONS, + default: async () => (await defaultConfigProvider()).retryMode || DEFAULT_RETRY_MODE, + }), + sha256: config?.sha256 ?? Hash.bind(null, "sha256"), + streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), + }; +}; diff --git a/clients/client-ssm-quicksetup/src/runtimeExtensions.ts b/clients/client-ssm-quicksetup/src/runtimeExtensions.ts new file mode 100644 index 000000000000..b085bc5aa02e --- /dev/null +++ b/clients/client-ssm-quicksetup/src/runtimeExtensions.ts @@ -0,0 +1,48 @@ +// smithy-typescript generated code +import { + getAwsRegionExtensionConfiguration, + resolveAwsRegionExtensionConfiguration, +} from "@aws-sdk/region-config-resolver"; +import { getHttpHandlerExtensionConfiguration, resolveHttpHandlerRuntimeConfig } from "@smithy/protocol-http"; +import { getDefaultExtensionConfiguration, resolveDefaultRuntimeConfig } from "@smithy/smithy-client"; + +import { getHttpAuthExtensionConfiguration, resolveHttpAuthRuntimeConfig } from "./auth/httpAuthExtensionConfiguration"; +import { SSMQuickSetupExtensionConfiguration } from "./extensionConfiguration"; + +/** + * @public + */ +export interface RuntimeExtension { + configure(extensionConfiguration: SSMQuickSetupExtensionConfiguration): void; +} + +/** + * @public + */ +export interface RuntimeExtensionsConfig { + extensions: RuntimeExtension[]; +} + +const asPartial = >(t: T) => t; + +/** + * @internal + */ +export const resolveRuntimeExtensions = (runtimeConfig: any, extensions: RuntimeExtension[]) => { + const extensionConfiguration: SSMQuickSetupExtensionConfiguration = { + ...asPartial(getAwsRegionExtensionConfiguration(runtimeConfig)), + ...asPartial(getDefaultExtensionConfiguration(runtimeConfig)), + ...asPartial(getHttpHandlerExtensionConfiguration(runtimeConfig)), + ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig)), + }; + + extensions.forEach((extension) => extension.configure(extensionConfiguration)); + + return { + ...runtimeConfig, + ...resolveAwsRegionExtensionConfiguration(extensionConfiguration), + ...resolveDefaultRuntimeConfig(extensionConfiguration), + ...resolveHttpHandlerRuntimeConfig(extensionConfiguration), + ...resolveHttpAuthRuntimeConfig(extensionConfiguration), + }; +}; diff --git a/clients/client-ssm-quicksetup/tsconfig.cjs.json b/clients/client-ssm-quicksetup/tsconfig.cjs.json new file mode 100644 index 000000000000..3567d85ba846 --- /dev/null +++ b/clients/client-ssm-quicksetup/tsconfig.cjs.json @@ -0,0 +1,6 @@ +{ + "extends": "./tsconfig", + "compilerOptions": { + "outDir": "dist-cjs" + } +} diff --git a/clients/client-ssm-quicksetup/tsconfig.es.json b/clients/client-ssm-quicksetup/tsconfig.es.json new file mode 100644 index 000000000000..809f57bde65e --- /dev/null +++ b/clients/client-ssm-quicksetup/tsconfig.es.json @@ -0,0 +1,8 @@ +{ + "extends": "./tsconfig", + "compilerOptions": { + "lib": ["dom"], + "module": "esnext", + "outDir": "dist-es" + } +} diff --git a/clients/client-ssm-quicksetup/tsconfig.json b/clients/client-ssm-quicksetup/tsconfig.json new file mode 100644 index 000000000000..e7f5ec56b742 --- /dev/null +++ b/clients/client-ssm-quicksetup/tsconfig.json @@ -0,0 +1,13 @@ +{ + "extends": "@tsconfig/node16/tsconfig.json", + "compilerOptions": { + "downlevelIteration": true, + "importHelpers": true, + "incremental": true, + "removeComments": true, + "resolveJsonModule": true, + "rootDir": "src", + "useUnknownInCatchVariables": false + }, + "exclude": ["test/"] +} diff --git a/clients/client-ssm-quicksetup/tsconfig.types.json b/clients/client-ssm-quicksetup/tsconfig.types.json new file mode 100644 index 000000000000..4c3dfa7b3d25 --- /dev/null +++ b/clients/client-ssm-quicksetup/tsconfig.types.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig", + "compilerOptions": { + "removeComments": false, + "declaration": true, + "declarationDir": "dist-types", + "emitDeclarationOnly": true + }, + "exclude": ["test/**/*", "dist-types/**/*"] +} diff --git a/codegen/sdk-codegen/aws-models/ssm-quicksetup.json b/codegen/sdk-codegen/aws-models/ssm-quicksetup.json new file mode 100644 index 000000000000..7959d7001793 --- /dev/null +++ b/codegen/sdk-codegen/aws-models/ssm-quicksetup.json @@ -0,0 +1,2218 @@ +{ + "smithy": "2.0", + "shapes": { + "com.amazonaws.ssmquicksetup#AccessDeniedException": { + "type": "structure", + "members": { + "Message": { + "target": "smithy.api#String" + } + }, + "traits": { + "smithy.api#documentation": "

The requester has insufficient permissions to perform the operation.

", + "smithy.api#error": "client", + "smithy.api#httpError": 403 + } + }, + "com.amazonaws.ssmquicksetup#ConfigurationDefinition": { + "type": "structure", + "members": { + "Type": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The type of the Quick Setup configuration.

", + "smithy.api#pattern": "^[a-zA-Z0-9_\\-.:/]{3,200}$", + "smithy.api#required": {} + } + }, + "Parameters": { + "target": "com.amazonaws.ssmquicksetup#ConfigurationParametersMap", + "traits": { + "smithy.api#documentation": "

A list of key-value pairs containing the required parameters for the configuration\n type.

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

The version of the Quick Setup type used.

", + "smithy.api#length": { + "min": 1, + "max": 128 + } + } + }, + "LocalDeploymentExecutionRoleName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The name of the IAM role used to deploy local\n configurations.

", + "smithy.api#pattern": "^[\\w+=,.@-]{1,64}$" + } + }, + "LocalDeploymentAdministrationRoleArn": { + "target": "com.amazonaws.ssmquicksetup#IAMRoleArn", + "traits": { + "smithy.api#documentation": "

The ARN of the IAM role used to administrate local configuration\n deployments.

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

The ID of the configuration definition.

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

The definition of a Quick Setup configuration.

" + } + }, + "com.amazonaws.ssmquicksetup#ConfigurationDefinitionInput": { + "type": "structure", + "members": { + "Type": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The type of the Quick Setup configuration.

", + "smithy.api#pattern": "^[a-zA-Z0-9_\\-.:/]{3,200}$", + "smithy.api#required": {} + } + }, + "Parameters": { + "target": "com.amazonaws.ssmquicksetup#ConfigurationParametersMap", + "traits": { + "smithy.api#documentation": "

The parameters for the configuration definition type. Parameters for configuration\n definitions vary based the configuration type. The following tables outline the\n parameters for each configuration type.

\n
\n
OpsCenter (Type: Amazon Web ServicesQuickSetupType-SSMOpsCenter)
\n
\n
    \n
  • \n

    \n DelegatedAccountId\n

    \n
      \n
    • \n

      Description: (Required) The ID of the\n delegated administrator account.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetOrganizationalUnits\n

    \n
      \n
    • \n

      Description: (Required) A comma separated\n list of organizational units (OUs) you want to\n deploy the configuration to.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetRegions\n

    \n
      \n
    • \n

      Description: (Required) A comma separated\n list of Amazon Web Services Regions you want to\n deploy the configuration to.

      \n
    • \n
    \n
  • \n
\n
\n
Resource Scheduler (Type: Amazon Web ServicesQuickSetupType-Scheduler)
\n
\n
    \n
  • \n

    \n TargetTagKey\n

    \n
      \n
    • \n

      Description: (Required) The tag key assigned\n to the instances you want to target.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetTagValue\n

    \n
      \n
    • \n

      Description: (Required) The value of the tag\n key assigned to the instances you want to\n target.

      \n
    • \n
    \n
  • \n
  • \n

    \n ICalendarString\n

    \n
      \n
    • \n

      Description: (Required) An iCalendar\n formatted string containing the schedule you want\n Change Manager to use.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetAccounts\n

    \n
      \n
    • \n

      Description: (Optional) The ID of the\n Amazon Web Services account initiating the\n configuration deployment. You only need to provide\n a value for this parameter if you want to deploy\n the configuration locally. A value must be\n provided for either TargetAccounts or\n TargetOrganizationalUnits.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetOrganizationalUnits\n

    \n
      \n
    • \n

      Description: (Optional) A comma separated\n list of organizational units (OUs) you want to\n deploy the configuration to.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetRegions\n

    \n
      \n
    • \n

      Description: (Required) A comma separated\n list of Amazon Web Services Regions you want to\n deploy the configuration to.

      \n
    • \n
    \n
  • \n
\n
\n
Default Host Management Configuration (Type: Amazon Web ServicesQuickSetupType-DHMC)
\n
\n
    \n
  • \n

    \n UpdateSSMAgent\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether the SSM Agent is updated on the\n target instances every 2 weeks. The default value\n is \"true\".

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetOrganizationalUnits\n

    \n
      \n
    • \n

      Description: (Required) A comma separated\n list of organizational units (OUs) you want to\n deploy the configuration to.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetRegions\n

    \n
      \n
    • \n

      Description: (Required) A comma separated\n list of Amazon Web Services Regions you want to\n deploy the configuration to.

      \n
    • \n
    \n
  • \n
\n
\n
Resource Explorer (Type: Amazon Web ServicesQuickSetupType-ResourceExplorer)
\n
\n
    \n
  • \n

    \n SelectedAggregatorRegion\n

    \n
      \n
    • \n

      Description: (Required) The Amazon Web Services Region where you want to create the\n aggregator index.

      \n
    • \n
    \n
  • \n
  • \n

    \n ReplaceExistingAggregator\n

    \n
      \n
    • \n

      Description: (Required) A boolean value that\n determines whether to demote an existing\n aggregator if it is in a Region that differs from\n the value you specify for the\n SelectedAggregatorRegion.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetOrganizationalUnits\n

    \n
      \n
    • \n

      Description: (Required) A comma separated\n list of organizational units (OUs) you want to\n deploy the configuration to.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetRegions\n

    \n
      \n
    • \n

      Description: (Required) A comma separated\n list of Amazon Web Services Regions you want to\n deploy the configuration to.

      \n
    • \n
    \n
  • \n
\n
\n
Change Manager (Type: Amazon Web ServicesQuickSetupType-SSMChangeMgr)
\n
\n
    \n
  • \n

    \n DelegatedAccountId\n

    \n
      \n
    • \n

      Description: (Required) The ID of the\n delegated administrator account.

      \n
    • \n
    \n
  • \n
  • \n

    \n JobFunction\n

    \n
      \n
    • \n

      Description: (Required) The name for the\n Change Manager job function.

      \n
    • \n
    \n
  • \n
  • \n

    \n PermissionType\n

    \n
      \n
    • \n

      Description: (Optional) Specifies whether\n you want to use default administrator permissions\n for the job function role, or provide a custom\n IAM policy. The valid values are\n CustomPermissions and\n AdminPermissions. The default value\n for the parameter is\n CustomerPermissions.

      \n
    • \n
    \n
  • \n
  • \n

    \n CustomPermissions\n

    \n
      \n
    • \n

      Description: (Optional) A JSON string\n containing the IAM policy you want\n your job function to use. You must provide a value\n for this parameter if you specify\n CustomPermissions for the\n PermissionType parameter.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetOrganizationalUnits\n

    \n
      \n
    • \n

      Description: (Required) A comma separated\n list of organizational units (OUs) you want to\n deploy the configuration to.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetRegions\n

    \n
      \n
    • \n

      Description: (Required) A comma separated\n list of Amazon Web Services Regions you want to\n deploy the configuration to.

      \n
    • \n
    \n
  • \n
\n
\n
DevOps Guru (Type: Amazon Web ServicesQuickSetupType-DevOpsGuru)
\n
\n
    \n
  • \n

    \n AnalyseAllResources\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether DevOps Guru analyzes all\n CloudFormation stacks in the account. The\n default value is \"false\".

      \n
    • \n
    \n
  • \n
  • \n

    \n EnableSnsNotifications\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether DevOps Guru sends\n notifications when an insight is created. The\n default value is \"true\".

      \n
    • \n
    \n
  • \n
  • \n

    \n EnableSsmOpsItems\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether DevOps Guru creates an\n OpsCenter OpsItem when an insight is created. The\n default value is \"true\".

      \n
    • \n
    \n
  • \n
  • \n

    \n EnableDriftRemediation\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether a drift remediation schedule is\n used. The default value is\n \"false\".

      \n
    • \n
    \n
  • \n
  • \n

    \n RemediationSchedule\n

    \n
      \n
    • \n

      Description: (Optional) A rate expression\n that defines the schedule for drift remediation.\n The valid values are rate(30 days),\n rate(14 days), rate(1\n days), and none. The default\n value is \"none\".

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetAccounts\n

    \n
      \n
    • \n

      Description: (Optional) The ID of the\n Amazon Web Services account initiating the\n configuration deployment. You only need to provide\n a value for this parameter if you want to deploy\n the configuration locally. A value must be\n provided for either TargetAccounts or\n TargetOrganizationalUnits.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetOrganizationalUnits\n

    \n
      \n
    • \n

      Description: (Optional) A comma separated\n list of organizational units (OUs) you want to\n deploy the configuration to.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetRegions\n

    \n
      \n
    • \n

      Description: (Required) A comma separated\n list of Amazon Web Services Regions you want to\n deploy the configuration to.

      \n
    • \n
    \n
  • \n
\n
\n
Conformance Packs (Type: Amazon Web ServicesQuickSetupType-CFGCPacks)
\n
\n
    \n
  • \n

    \n DelegatedAccountId\n

    \n
      \n
    • \n

      Description: (Optional) The ID of the\n delegated administrator account. This parameter is\n required for Organization deployments.

      \n
    • \n
    \n
  • \n
  • \n

    \n RemediationSchedule\n

    \n
      \n
    • \n

      Description: (Optional) A rate expression\n that defines the schedule for drift remediation.\n The valid values are rate(30 days),\n rate(14 days), rate(2\n days), and none. The default\n value is \"none\".

      \n
    • \n
    \n
  • \n
  • \n

    \n CPackNames\n

    \n
      \n
    • \n

      Description: (Required) A comma separated\n list of Config conformance\n packs.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetAccounts\n

    \n
      \n
    • \n

      Description: (Optional) The ID of the\n Amazon Web Services account initiating the\n configuration deployment. You only need to provide\n a value for this parameter if you want to deploy\n the configuration locally. A value must be\n provided for either TargetAccounts or\n TargetOrganizationalUnits.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetOrganizationalUnits\n

    \n
      \n
    • \n

      Description: (Optional) The ID of the root\n of your Organization. This configuration type\n doesn't currently support choosing specific OUs.\n The configuration will be deployed to all the OUs\n in the Organization.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetRegions\n

    \n
      \n
    • \n

      Description: (Required) A comma separated\n list of Amazon Web Services Regions you want to\n deploy the configuration to.

      \n
    • \n
    \n
  • \n
\n
\n
Config Recording (Type: Amazon Web ServicesQuickSetupType-CFGRecording)
\n
\n
    \n
  • \n

    \n RecordAllResources\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether all supported resources are\n recorded. The default value is\n \"true\".

      \n
    • \n
    \n
  • \n
  • \n

    \n ResourceTypesToRecord\n

    \n
      \n
    • \n

      Description: (Optional) A comma separated\n list of resource types you want to record.

      \n
    • \n
    \n
  • \n
  • \n

    \n RecordGlobalResourceTypes\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether global resources are recorded\n with all resource configurations. The default\n value is \"false\".

      \n
    • \n
    \n
  • \n
  • \n

    \n GlobalResourceTypesRegion\n

    \n
      \n
    • \n

      Description: (Optional) Determines the\n Amazon Web Services Region where global resources\n are recorded.

      \n
    • \n
    \n
  • \n
  • \n

    \n UseCustomBucket\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether a custom Amazon S3\n bucket is used for delivery. The default value is\n \"false\".

      \n
    • \n
    \n
  • \n
  • \n

    \n DeliveryBucketName\n

    \n
      \n
    • \n

      Description: (Optional) The name of the\n Amazon S3 bucket you want Config to deliver configuration snapshots and\n configuration history files to.

      \n
    • \n
    \n
  • \n
  • \n

    \n DeliveryBucketPrefix\n

    \n
      \n
    • \n

      Description: (Optional) The key prefix you\n want to use in the custom Amazon S3\n bucket.

      \n
    • \n
    \n
  • \n
  • \n

    \n NotificationOptions\n

    \n
      \n
    • \n

      Description: (Optional) Determines the\n notification configuration for the recorder. The\n valid values are NoStreaming,\n UseExistingTopic, and\n CreateTopic. The default value is\n NoStreaming.

      \n
    • \n
    \n
  • \n
  • \n

    \n CustomDeliveryTopicAccountId\n

    \n
      \n
    • \n

      Description: (Optional) The ID of the\n Amazon Web Services account where the Amazon SNS topic you want to use for notifications\n resides. You must specify a value for this\n parameter if you use the\n UseExistingTopic notification\n option.

      \n
    • \n
    \n
  • \n
  • \n

    \n CustomDeliveryTopicName\n

    \n
      \n
    • \n

      Description: (Optional) The name of the\n Amazon SNS topic you want to use for\n notifications. You must specify a value for this\n parameter if you use the\n UseExistingTopic notification\n option.

      \n
    • \n
    \n
  • \n
  • \n

    \n RemediationSchedule\n

    \n
      \n
    • \n

      Description: (Optional) A rate expression\n that defines the schedule for drift remediation.\n The valid values are rate(30 days),\n rate(7 days), rate(1\n days), and none. The default\n value is \"none\".

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetAccounts\n

    \n
      \n
    • \n

      Description: (Optional) The ID of the\n Amazon Web Services account initiating the\n configuration deployment. You only need to provide\n a value for this parameter if you want to deploy\n the configuration locally. A value must be\n provided for either TargetAccounts or\n TargetOrganizationalUnits.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetOrganizationalUnits\n

    \n
      \n
    • \n

      Description: (Optional) The ID of the root\n of your Organization. This configuration type\n doesn't currently support choosing specific OUs.\n The configuration will be deployed to all the OUs\n in the Organization.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetRegions\n

    \n
      \n
    • \n

      Description: (Required) A comma separated\n list of Amazon Web Services Regions you want to\n deploy the configuration to.

      \n
    • \n
    \n
  • \n
\n
\n
Host Management (Type: Amazon Web ServicesQuickSetupType-SSMHostMgmt)
\n
\n
    \n
  • \n

    \n UpdateSSMAgent\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether the SSM Agent is updated on the\n target instances every 2 weeks. The default value\n is \"true\".

      \n
    • \n
    \n
  • \n
  • \n

    \n UpdateEc2LaunchAgent\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether the EC2 Launch agent is updated\n on the target instances every month. The default\n value is \"false\".

      \n
    • \n
    \n
  • \n
  • \n

    \n CollectInventory\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether the EC2 Launch agent is updated\n on the target instances every month. The default\n value is \"true\".

      \n
    • \n
    \n
  • \n
  • \n

    \n ScanInstances\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether the target instances are\n scanned daily for available patches. The default\n value is \"true\".

      \n
    • \n
    \n
  • \n
  • \n

    \n InstallCloudWatchAgent\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether the Amazon CloudWatch agent\n is installed on the target instances. The default\n value is \"false\".

      \n
    • \n
    \n
  • \n
  • \n

    \n UpdateCloudWatchAgent\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether the Amazon CloudWatch agent\n is updated on the target instances every month.\n The default value is \"false\".

      \n
    • \n
    \n
  • \n
  • \n

    \n IsPolicyAttachAllowed\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether Quick Setup attaches policies\n to instances profiles already associated with the\n target instances. The default value is\n \"false\".

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetType\n

    \n
      \n
    • \n

      Description: (Optional) Determines how\n instances are targeted for local account\n deployments. Don't specify a value for this\n parameter if you're deploying to OUs. The valid\n values are *,\n InstanceIds,\n ResourceGroups, and\n Tags. Use * to target\n all instances in the account.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetInstances\n

    \n
      \n
    • \n

      Description: (Optional) A comma separated\n list of instance IDs. You must provide a value for\n this parameter if you specify\n InstanceIds for the\n TargetType parameter.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetTagKey\n

    \n
      \n
    • \n

      Description: (Optional) The tag key assigned\n to the instances you want to target. You must\n provide a value for this parameter if you specify\n Tags for the TargetType\n parameter.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetTagValue\n

    \n
      \n
    • \n

      Description: (Optional) The value of the tag\n key assigned to the instances you want to target.\n You must provide a value for this parameter if you\n specify Tags for the\n TargetType parameter.

      \n
    • \n
    \n
  • \n
  • \n

    \n ResourceGroupName\n

    \n
      \n
    • \n

      Description: (Optional) The name of the\n resource group associated with the instances you\n want to target. You must provide a value for this\n parameter if you specify\n ResourceGroups for the\n TargetType parameter.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetAccounts\n

    \n
      \n
    • \n

      Description: (Optional) The ID of the\n Amazon Web Services account initiating the\n configuration deployment. You only need to provide\n a value for this parameter if you want to deploy\n the configuration locally. A value must be\n provided for either TargetAccounts or\n TargetOrganizationalUnits.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetOrganizationalUnits\n

    \n
      \n
    • \n

      Description: (Optional) A comma separated\n list of organizational units (OUs) you want to\n deploy the configuration to.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetRegions\n

    \n
      \n
    • \n

      Description: (Required) A comma separated\n list of Amazon Web Services Regions you want to\n deploy the configuration to.

      \n
    • \n
    \n
  • \n
\n
\n
Distributor (Type: Amazon Web ServicesQuickSetupType-Distributor)
\n
\n
    \n
  • \n

    \n PackagesToInstall\n

    \n
      \n
    • \n

      Description: (Required) A comma separated\n list of packages you want to install on the target\n instances. The valid values are\n AWSEFSTools, AWSCWAgent,\n and AWSEC2LaunchAgent.

      \n
    • \n
    \n
  • \n
  • \n

    \n RemediationSchedule\n

    \n
      \n
    • \n

      Description: (Optional) A rate expression\n that defines the schedule for drift remediation.\n The valid values are rate(30 days),\n rate(14 days), rate(2\n days), and none. The default\n value is \"rate(30 days)\".

      \n
    • \n
    \n
  • \n
  • \n

    \n IsPolicyAttachAllowed\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether Quick Setup attaches policies\n to instances profiles already associated with the\n target instances. The default value is\n \"false\".

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetType\n

    \n
      \n
    • \n

      Description: (Optional) Determines how\n instances are targeted for local account\n deployments. Don't specify a value for this\n parameter if you're deploying to OUs. The valid\n values are *,\n InstanceIds,\n ResourceGroups, and\n Tags. Use * to target\n all instances in the account.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetInstances\n

    \n
      \n
    • \n

      Description: (Optional) A comma separated\n list of instance IDs. You must provide a value for\n this parameter if you specify\n InstanceIds for the\n TargetType parameter.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetTagKey\n

    \n
      \n
    • \n

      Description: (Required) The tag key assigned\n to the instances you want to target. You must\n provide a value for this parameter if you specify\n Tags for the TargetType\n parameter.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetTagValue\n

    \n
      \n
    • \n

      Description: (Required) The value of the tag\n key assigned to the instances you want to target.\n You must provide a value for this parameter if you\n specify Tags for the\n TargetType parameter.

      \n
    • \n
    \n
  • \n
  • \n

    \n ResourceGroupName\n

    \n
      \n
    • \n

      Description: (Required) The name of the\n resource group associated with the instances you\n want to target. You must provide a value for this\n parameter if you specify\n ResourceGroups for the\n TargetType parameter.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetAccounts\n

    \n
      \n
    • \n

      Description: (Optional) The ID of the\n Amazon Web Services account initiating the\n configuration deployment. You only need to provide\n a value for this parameter if you want to deploy\n the configuration locally. A value must be\n provided for either TargetAccounts or\n TargetOrganizationalUnits.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetOrganizationalUnits\n

    \n
      \n
    • \n

      Description: (Optional) A comma separated\n list of organizational units (OUs) you want to\n deploy the configuration to.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetRegions\n

    \n
      \n
    • \n

      Description: (Required) A comma separated\n list of Amazon Web Services Regions you want to\n deploy the configuration to.

      \n
    • \n
    \n
  • \n
\n
\n
Patch Policy (Type: Amazon Web ServicesQuickSetupType-PatchPolicy)
\n
\n
    \n
  • \n

    \n PatchPolicyName\n

    \n
      \n
    • \n

      Description: (Required) A name for the patch\n policy. The value you provide is applied to target\n Amazon EC2 instances as a tag.

      \n
    • \n
    \n
  • \n
  • \n

    \n SelectedPatchBaselines\n

    \n
      \n
    • \n

      Description: (Required) An array of JSON\n objects containing the information for the patch\n baselines to include in your patch policy.

      \n
    • \n
    \n
  • \n
  • \n

    \n PatchBaselineUseDefault\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether the selected patch baselines\n are all Amazon Web Services provided.

      \n
    • \n
    \n
  • \n
  • \n

    \n ConfigurationOptionsPatchOperation\n

    \n
      \n
    • \n

      Description: (Optional) Determines whether\n target instances scan for available patches, or\n scan and install available patches. The valid\n values are Scan and\n ScanAndInstall. The default value for\n the parameter is Scan.

      \n
    • \n
    \n
  • \n
  • \n

    \n ConfigurationOptionsScanValue\n

    \n
      \n
    • \n

      Description: (Optional) A cron expression\n that is used as the schedule for when instances\n scan for available patches.

      \n
    • \n
    \n
  • \n
  • \n

    \n ConfigurationOptionsInstallValue\n

    \n
      \n
    • \n

      Description: (Optional) A cron expression\n that is used as the schedule for when instances\n install available patches.

      \n
    • \n
    \n
  • \n
  • \n

    \n ConfigurationOptionsScanNextInterval\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether instances should scan for\n available patches at the next cron interval. The\n default value is \"false\".

      \n
    • \n
    \n
  • \n
  • \n

    \n ConfigurationOptionsInstallNextInterval\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether instances should scan for\n available patches at the next cron interval. The\n default value is \"false\".

      \n
    • \n
    \n
  • \n
  • \n

    \n RebootOption\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether instances are rebooted after\n patches are installed. The default value is\n \"false\".

      \n
    • \n
    \n
  • \n
  • \n

    \n IsPolicyAttachAllowed\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether Quick Setup attaches policies\n to instances profiles already associated with the\n target instances. The default value is\n \"false\".

      \n
    • \n
    \n
  • \n
  • \n

    \n OutputLogEnableS3\n

    \n
      \n
    • \n

      Description: (Optional) A boolean value that\n determines whether command output logs are sent to\n Amazon S3.

      \n
    • \n
    \n
  • \n
  • \n

    \n OutputS3Location\n

    \n
      \n
    • \n

      Description: (Optional) A JSON string\n containing information about the Amazon S3\n bucket where you want to store the output details\n of the request.

      \n
        \n
      • \n

        \n OutputS3BucketRegion\n

        \n
          \n
        • \n

          Description: (Optional) The Amazon Web Services Region where the Amazon S3\n bucket you want Config to deliver\n command output to is located.

          \n
        • \n
        \n
      • \n
      • \n

        \n OutputS3BucketName\n

        \n
          \n
        • \n

          Description: (Optional) The name of the\n Amazon S3 bucket you want Config to deliver command output to.

          \n
        • \n
        \n
      • \n
      • \n

        \n OutputS3KeyPrefix\n

        \n
          \n
        • \n

          Description: (Optional) The key prefix you\n want to use in the custom Amazon S3\n bucket.

          \n
        • \n
        \n
      • \n
      \n
    • \n
    \n
  • \n
  • \n

    \n TargetType\n

    \n
      \n
    • \n

      Description: (Optional) Determines how\n instances are targeted for local account\n deployments. Don't specify a value for this\n parameter if you're deploying to OUs. The valid\n values are *,\n InstanceIds,\n ResourceGroups, and\n Tags. Use * to target\n all instances in the account.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetInstances\n

    \n
      \n
    • \n

      Description: (Optional) A comma separated\n list of instance IDs. You must provide a value for\n this parameter if you specify\n InstanceIds for the\n TargetType parameter.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetTagKey\n

    \n
      \n
    • \n

      Description: (Required) The tag key assigned\n to the instances you want to target. You must\n provide a value for this parameter if you specify\n Tags for the TargetType\n parameter.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetTagValue\n

    \n
      \n
    • \n

      Description: (Required) The value of the tag\n key assigned to the instances you want to target.\n You must provide a value for this parameter if you\n specify Tags for the\n TargetType parameter.

      \n
    • \n
    \n
  • \n
  • \n

    \n ResourceGroupName\n

    \n
      \n
    • \n

      Description: (Required) The name of the\n resource group associated with the instances you\n want to target. You must provide a value for this\n parameter if you specify\n ResourceGroups for the\n TargetType parameter.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetAccounts\n

    \n
      \n
    • \n

      Description: (Optional) The ID of the\n Amazon Web Services account initiating the\n configuration deployment. You only need to provide\n a value for this parameter if you want to deploy\n the configuration locally. A value must be\n provided for either TargetAccounts or\n TargetOrganizationalUnits.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetOrganizationalUnits\n

    \n
      \n
    • \n

      Description: (Optional) A comma separated\n list of organizational units (OUs) you want to\n deploy the configuration to.

      \n
    • \n
    \n
  • \n
  • \n

    \n TargetRegions\n

    \n
      \n
    • \n

      Description: (Required) A comma separated\n list of Amazon Web Services Regions you want to\n deploy the configuration to.

      \n
    • \n
    \n
  • \n
\n
\n
", + "smithy.api#required": {} + } + }, + "TypeVersion": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The version of the Quick Setup type to use.

", + "smithy.api#length": { + "min": 1, + "max": 128 + } + } + }, + "LocalDeploymentExecutionRoleName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The name of the IAM role used to deploy local\n configurations.

", + "smithy.api#pattern": "^[\\w+=,.@-]{1,64}$" + } + }, + "LocalDeploymentAdministrationRoleArn": { + "target": "com.amazonaws.ssmquicksetup#IAMRoleArn", + "traits": { + "smithy.api#documentation": "

The ARN of the IAM role used to administrate local configuration\n deployments.

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

Defines the preferences and options for a configuration definition.

" + } + }, + "com.amazonaws.ssmquicksetup#ConfigurationDefinitionSummariesList": { + "type": "list", + "member": { + "target": "com.amazonaws.ssmquicksetup#ConfigurationDefinitionSummary" + } + }, + "com.amazonaws.ssmquicksetup#ConfigurationDefinitionSummary": { + "type": "structure", + "members": { + "Id": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The ID of the configuration definition.

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

The type of the Quick Setup configuration used by the configuration\n definition.

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

The version of the Quick Setup type used by the configuration definition.

" + } + }, + "FirstClassParameters": { + "target": "com.amazonaws.ssmquicksetup#ConfigurationParametersMap", + "traits": { + "smithy.api#documentation": "

The common parameters and values for the configuration definition.

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

A summarized definition of a Quick Setup configuration definition.

" + } + }, + "com.amazonaws.ssmquicksetup#ConfigurationDefinitionsInputList": { + "type": "list", + "member": { + "target": "com.amazonaws.ssmquicksetup#ConfigurationDefinitionInput" + } + }, + "com.amazonaws.ssmquicksetup#ConfigurationDefinitionsList": { + "type": "list", + "member": { + "target": "com.amazonaws.ssmquicksetup#ConfigurationDefinition" + } + }, + "com.amazonaws.ssmquicksetup#ConfigurationManagerList": { + "type": "list", + "member": { + "target": "com.amazonaws.ssmquicksetup#ConfigurationManagerSummary" + } + }, + "com.amazonaws.ssmquicksetup#ConfigurationManagerSummary": { + "type": "structure", + "members": { + "ManagerArn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The ARN of the Quick Setup configuration.

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

The description of the configuration.

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

The name of the configuration

" + } + }, + "StatusSummaries": { + "target": "com.amazonaws.ssmquicksetup#StatusSummariesList", + "traits": { + "smithy.api#documentation": "

Summaries of the state of the configuration manager. These summaries include an\n aggregate of the statuses from the configuration definition associated with the\n configuration manager. This includes deployment statuses, association statuses,\n drift statuses, health checks, and more.

" + } + }, + "ConfigurationDefinitionSummaries": { + "target": "com.amazonaws.ssmquicksetup#ConfigurationDefinitionSummariesList", + "traits": { + "smithy.api#documentation": "

A summary of the Quick Setup configuration definition.

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

A summary of a Quick Setup configuration manager.

" + } + }, + "com.amazonaws.ssmquicksetup#ConfigurationParametersMap": { + "type": "map", + "key": { + "target": "smithy.api#String", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 256 + }, + "smithy.api#pattern": "^[A-Za-z0-9+=@_\\/\\s-]+$" + } + }, + "value": { + "target": "smithy.api#String", + "traits": { + "smithy.api#length": { + "max": 40960 + } + } + } + }, + "com.amazonaws.ssmquicksetup#ConflictException": { + "type": "structure", + "members": { + "Message": { + "target": "smithy.api#String" + } + }, + "traits": { + "smithy.api#documentation": "

Another request is being processed. Wait a few minutes and try again.

", + "smithy.api#error": "client", + "smithy.api#httpError": 409 + } + }, + "com.amazonaws.ssmquicksetup#CreateConfigurationManager": { + "type": "operation", + "input": { + "target": "com.amazonaws.ssmquicksetup#CreateConfigurationManagerInput" + }, + "output": { + "target": "com.amazonaws.ssmquicksetup#CreateConfigurationManagerOutput" + }, + "errors": [ + { + "target": "com.amazonaws.ssmquicksetup#AccessDeniedException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ConflictException" + }, + { + "target": "com.amazonaws.ssmquicksetup#InternalServerException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ThrottlingException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates a Quick Setup configuration manager resource. This object is a collection\n of desired state configurations for multiple configuration definitions and\n summaries describing the deployments of those definitions.

", + "smithy.api#http": { + "code": 200, + "method": "POST", + "uri": "/configurationManager" + } + } + }, + "com.amazonaws.ssmquicksetup#CreateConfigurationManagerInput": { + "type": "structure", + "members": { + "Name": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A name for the configuration manager.

", + "smithy.api#pattern": "^[ A-Za-z0-9._-]{0,120}$" + } + }, + "Description": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A description of the configuration manager.

", + "smithy.api#pattern": "^.{0,512}$" + } + }, + "ConfigurationDefinitions": { + "target": "com.amazonaws.ssmquicksetup#ConfigurationDefinitionsInputList", + "traits": { + "smithy.api#documentation": "

The definition of the Quick Setup configuration that the configuration manager\n deploys.

", + "smithy.api#required": {} + } + }, + "Tags": { + "target": "com.amazonaws.ssmquicksetup#TagsMap", + "traits": { + "smithy.api#documentation": "

Key-value pairs of metadata to assign to the configuration manager.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ssmquicksetup#CreateConfigurationManagerOutput": { + "type": "structure", + "members": { + "ManagerArn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The ARN for the newly created configuration manager.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ssmquicksetup#DeleteConfigurationManager": { + "type": "operation", + "input": { + "target": "com.amazonaws.ssmquicksetup#DeleteConfigurationManagerInput" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.ssmquicksetup#AccessDeniedException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ConflictException" + }, + { + "target": "com.amazonaws.ssmquicksetup#InternalServerException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ThrottlingException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes a configuration manager.

", + "smithy.api#http": { + "code": 200, + "method": "DELETE", + "uri": "/configurationManager/{ManagerArn}" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.ssmquicksetup#DeleteConfigurationManagerInput": { + "type": "structure", + "members": { + "ManagerArn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The ID of the configuration manager.

", + "smithy.api#httpLabel": {}, + "smithy.api#pattern": "^arn:aws:ssm-quicksetup:([^:]+):(\\d{12}):configuration-manager/[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ssmquicksetup#Filter": { + "type": "structure", + "members": { + "Key": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The key for the filter.

", + "smithy.api#length": { + "max": 128 + }, + "smithy.api#pattern": "^[A-Za-z0-9+=@_\\/\\s-]*$", + "smithy.api#required": {} + } + }, + "Values": { + "target": "com.amazonaws.ssmquicksetup#FilterValues", + "traits": { + "smithy.api#documentation": "

The values for the filter keys.

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

A key-value pair to filter results.

" + } + }, + "com.amazonaws.ssmquicksetup#FilterValues": { + "type": "list", + "member": { + "target": "smithy.api#String", + "traits": { + "smithy.api#length": { + "max": 256 + }, + "smithy.api#pattern": "^[A-Za-z0-9+=@_\\/\\s-]*$" + } + } + }, + "com.amazonaws.ssmquicksetup#FiltersList": { + "type": "list", + "member": { + "target": "com.amazonaws.ssmquicksetup#Filter" + } + }, + "com.amazonaws.ssmquicksetup#GetConfigurationManager": { + "type": "operation", + "input": { + "target": "com.amazonaws.ssmquicksetup#GetConfigurationManagerInput" + }, + "output": { + "target": "com.amazonaws.ssmquicksetup#GetConfigurationManagerOutput" + }, + "errors": [ + { + "target": "com.amazonaws.ssmquicksetup#AccessDeniedException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ConflictException" + }, + { + "target": "com.amazonaws.ssmquicksetup#InternalServerException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ThrottlingException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns a configuration manager.

", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/configurationManager/{ManagerArn}" + }, + "smithy.api#readonly": {}, + "smithy.test#smokeTests": [ + { + "id": "GetConfigurationManagerFailure", + "params": { + "ManagerArn": "arn:aws:ssm-quicksetup:us-east-1:602768233532:configuration-manager/7cac1a1b-64a9-4c9a-97e8-8c68928b8f13" + }, + "expect": { + "failure": { + "errorId": "com.amazonaws.ssmquicksetup#AccessDeniedException" + } + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-east-1" + } + } + ] + } + }, + "com.amazonaws.ssmquicksetup#GetConfigurationManagerInput": { + "type": "structure", + "members": { + "ManagerArn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The ARN of the configuration manager.

", + "smithy.api#httpLabel": {}, + "smithy.api#length": { + "min": 1 + }, + "smithy.api#pattern": "^arn:aws:ssm-quicksetup:([^:]+):(\\d{12}):configuration-manager/[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ssmquicksetup#GetConfigurationManagerOutput": { + "type": "structure", + "members": { + "ManagerArn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The ARN of the configuration manager.

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

The description of the configuration manager.

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

The name of the configuration manager.

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

The datetime stamp when the configuration manager was created.

", + "smithy.api#timestampFormat": "date-time" + } + }, + "LastModifiedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The datetime stamp when the configuration manager was last updated.

", + "smithy.api#timestampFormat": "date-time" + } + }, + "StatusSummaries": { + "target": "com.amazonaws.ssmquicksetup#StatusSummariesList", + "traits": { + "smithy.api#documentation": "

A summary of the state of the configuration manager. This includes deployment\n statuses, association statuses, drift statuses, health checks, and more.

" + } + }, + "ConfigurationDefinitions": { + "target": "com.amazonaws.ssmquicksetup#ConfigurationDefinitionsList", + "traits": { + "smithy.api#documentation": "

The configuration definitions association with the configuration manager.

" + } + }, + "Tags": { + "target": "com.amazonaws.ssmquicksetup#TagsMap", + "traits": { + "smithy.api#documentation": "

Key-value pairs of metadata to assign to the configuration manager.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ssmquicksetup#GetServiceSettings": { + "type": "operation", + "input": { + "target": "smithy.api#Unit" + }, + "output": { + "target": "com.amazonaws.ssmquicksetup#GetServiceSettingsOutput" + }, + "errors": [ + { + "target": "com.amazonaws.ssmquicksetup#AccessDeniedException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ConflictException" + }, + { + "target": "com.amazonaws.ssmquicksetup#InternalServerException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns settings configured for Quick Setup in the requesting Amazon Web Services account and Amazon Web Services Region.

", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/serviceSettings" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.ssmquicksetup#GetServiceSettingsOutput": { + "type": "structure", + "members": { + "ServiceSettings": { + "target": "com.amazonaws.ssmquicksetup#ServiceSettings", + "traits": { + "smithy.api#documentation": "

Returns details about the settings for Quick Setup in the requesting Amazon Web Services account and Amazon Web Services Region.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ssmquicksetup#IAMRoleArn": { + "type": "string", + "traits": { + "aws.api#arnReference": { + "type": "AWS::IAM::Role" + } + } + }, + "com.amazonaws.ssmquicksetup#InternalServerException": { + "type": "structure", + "members": { + "Message": { + "target": "smithy.api#String" + } + }, + "traits": { + "smithy.api#documentation": "

An error occurred on the server side.

", + "smithy.api#error": "server", + "smithy.api#httpError": 500, + "smithy.api#retryable": {} + } + }, + "com.amazonaws.ssmquicksetup#ListConfigurationManagers": { + "type": "operation", + "input": { + "target": "com.amazonaws.ssmquicksetup#ListConfigurationManagersInput" + }, + "output": { + "target": "com.amazonaws.ssmquicksetup#ListConfigurationManagersOutput" + }, + "errors": [ + { + "target": "com.amazonaws.ssmquicksetup#AccessDeniedException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ConflictException" + }, + { + "target": "com.amazonaws.ssmquicksetup#InternalServerException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ThrottlingException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns Quick Setup configuration managers.

", + "smithy.api#http": { + "code": 200, + "method": "POST", + "uri": "/listConfigurationManagers" + }, + "smithy.api#paginated": { + "items": "ConfigurationManagersList", + "inputToken": "StartingToken", + "outputToken": "NextToken", + "pageSize": "MaxItems" + }, + "smithy.test#smokeTests": [ + { + "id": "ListConfigurationManagersSuccess", + "params": {}, + "expect": { + "success": {} + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-east-1" + } + } + ] + } + }, + "com.amazonaws.ssmquicksetup#ListConfigurationManagersInput": { + "type": "structure", + "members": { + "StartingToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The token to use when requesting a specific set of items from a list.

", + "smithy.api#length": { + "max": 1024 + }, + "smithy.api#pattern": "^[A-Za-z0-9+=@_\\/\\s-]*$" + } + }, + "MaxItems": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

Specifies the maximum number of configuration managers that are returned by the\n request.

", + "smithy.api#range": { + "min": 1, + "max": 100 + } + } + }, + "Filters": { + "target": "com.amazonaws.ssmquicksetup#FiltersList", + "traits": { + "smithy.api#documentation": "

Filters the results returned by the request.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ssmquicksetup#ListConfigurationManagersOutput": { + "type": "structure", + "members": { + "ConfigurationManagersList": { + "target": "com.amazonaws.ssmquicksetup#ConfigurationManagerList", + "traits": { + "smithy.api#documentation": "

The configuration managers returned by the request.

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

The token to use when requesting the next set of configuration managers. If there\n are no additional operations to return, the string is empty.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ssmquicksetup#ListQuickSetupTypes": { + "type": "operation", + "input": { + "target": "smithy.api#Unit" + }, + "output": { + "target": "com.amazonaws.ssmquicksetup#ListQuickSetupTypesOutput" + }, + "errors": [ + { + "target": "com.amazonaws.ssmquicksetup#AccessDeniedException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ConflictException" + }, + { + "target": "com.amazonaws.ssmquicksetup#InternalServerException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns the available Quick Setup types.

", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/listQuickSetupTypes" + }, + "smithy.api#readonly": {}, + "smithy.test#smokeTests": [ + { + "id": "ListQuickSetupTypesSuccess", + "params": {}, + "expect": { + "success": {} + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-east-1" + } + } + ] + } + }, + "com.amazonaws.ssmquicksetup#ListQuickSetupTypesOutput": { + "type": "structure", + "members": { + "QuickSetupTypeList": { + "target": "com.amazonaws.ssmquicksetup#QuickSetupTypeList", + "traits": { + "smithy.api#documentation": "

An array of Quick Setup types.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ssmquicksetup#ListTagsForResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.ssmquicksetup#ListTagsForResourceRequest" + }, + "output": { + "target": "com.amazonaws.ssmquicksetup#ListTagsForResourceResponse" + }, + "errors": [ + { + "target": "com.amazonaws.ssmquicksetup#AccessDeniedException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ConflictException" + }, + { + "target": "com.amazonaws.ssmquicksetup#InternalServerException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ThrottlingException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns tags assigned to the resource.

", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/tags/{ResourceArn}" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.ssmquicksetup#ListTagsForResourceRequest": { + "type": "structure", + "members": { + "ResourceArn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The ARN of the resource the tag is assigned to.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ssmquicksetup#ListTagsForResourceResponse": { + "type": "structure", + "members": { + "Tags": { + "target": "com.amazonaws.ssmquicksetup#Tags", + "traits": { + "smithy.api#documentation": "

Key-value pairs of metadata assigned to the resource.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ssmquicksetup#QuickSetup": { + "type": "service", + "version": "2018-05-10", + "operations": [ + { + "target": "com.amazonaws.ssmquicksetup#CreateConfigurationManager" + }, + { + "target": "com.amazonaws.ssmquicksetup#DeleteConfigurationManager" + }, + { + "target": "com.amazonaws.ssmquicksetup#GetConfigurationManager" + }, + { + "target": "com.amazonaws.ssmquicksetup#GetServiceSettings" + }, + { + "target": "com.amazonaws.ssmquicksetup#ListConfigurationManagers" + }, + { + "target": "com.amazonaws.ssmquicksetup#ListQuickSetupTypes" + }, + { + "target": "com.amazonaws.ssmquicksetup#ListTagsForResource" + }, + { + "target": "com.amazonaws.ssmquicksetup#TagResource" + }, + { + "target": "com.amazonaws.ssmquicksetup#UntagResource" + }, + { + "target": "com.amazonaws.ssmquicksetup#UpdateConfigurationDefinition" + }, + { + "target": "com.amazonaws.ssmquicksetup#UpdateConfigurationManager" + }, + { + "target": "com.amazonaws.ssmquicksetup#UpdateServiceSettings" + } + ], + "traits": { + "aws.api#service": { + "sdkId": "SSM QuickSetup", + "arnNamespace": "ssm-quicksetup", + "cloudTrailEventSource": "ssm-quicksetup.amazonaws.com" + }, + "aws.auth#sigv4": { + "name": "ssm-quicksetup" + }, + "aws.iam#supportedPrincipalTypes": ["Root", "IAMUser", "IAMRole", "FederatedUser"], + "aws.protocols#restJson1": {}, + "smithy.api#cors": { + "additionalAllowedHeaders": [ + "Authorization", + "Content-Type", + "Credentials", + "X-Amz-Date", + "X-Api-Key", + "X-Amz-Security-Token", + "x-amz-content-sha256", + "X-Amz-User-Agent" + ] + }, + "smithy.api#documentation": "

Quick Setup helps you quickly configure frequently used services and features with\n recommended best practices. Quick Setup simplifies setting up services, including\n Systems Manager, by automating common or recommended tasks.

", + "smithy.api#title": "AWS Systems Manager QuickSetup", + "smithy.rules#endpointRuleSet": { + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://ssm-quicksetup-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://ssm-quicksetup-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://ssm-quicksetup.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://ssm-quicksetup.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] + }, + "smithy.rules#endpointTests": { + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://ssm-quicksetup-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ssm-quicksetup-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://ssm-quicksetup.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ssm-quicksetup.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://ssm-quicksetup-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ssm-quicksetup-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://ssm-quicksetup.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ssm-quicksetup.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://ssm-quicksetup-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ssm-quicksetup-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://ssm-quicksetup.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ssm-quicksetup.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ssm-quicksetup-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ssm-quicksetup.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ssm-quicksetup-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ssm-quicksetup.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" + } + } + }, + "com.amazonaws.ssmquicksetup#QuickSetupTypeList": { + "type": "list", + "member": { + "target": "com.amazonaws.ssmquicksetup#QuickSetupTypeOutput" + } + }, + "com.amazonaws.ssmquicksetup#QuickSetupTypeOutput": { + "type": "structure", + "members": { + "Type": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The type of the Quick Setup configuration.

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

The latest version number of the configuration.

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

Information about the Quick Setup type.

" + } + }, + "com.amazonaws.ssmquicksetup#ResourceNotFoundException": { + "type": "structure", + "members": { + "Message": { + "target": "smithy.api#String" + } + }, + "traits": { + "smithy.api#documentation": "

The resource couldn't be found. Check the ID or name and try again.

", + "smithy.api#error": "client", + "smithy.api#httpError": 404 + } + }, + "com.amazonaws.ssmquicksetup#ServiceSettings": { + "type": "structure", + "members": { + "ExplorerEnablingRoleArn": { + "target": "com.amazonaws.ssmquicksetup#IAMRoleArn", + "traits": { + "smithy.api#documentation": "

The IAM role used to enable Explorer.

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

Settings configured for Quick Setup.

" + } + }, + "com.amazonaws.ssmquicksetup#Status": { + "type": "enum", + "members": { + "INITIALIZING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INITIALIZING" + } + }, + "DEPLOYING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DEPLOYING" + } + }, + "SUCCEEDED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SUCCEEDED" + } + }, + "DELETING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETING" + } + }, + "STOPPING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STOPPING" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FAILED" + } + }, + "STOPPED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STOPPED" + } + }, + "DELETE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETE_FAILED" + } + }, + "STOP_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STOP_FAILED" + } + }, + "NONE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NONE" + } + } + } + }, + "com.amazonaws.ssmquicksetup#StatusDetails": { + "type": "map", + "key": { + "target": "smithy.api#String" + }, + "value": { + "target": "smithy.api#String" + } + }, + "com.amazonaws.ssmquicksetup#StatusSummariesList": { + "type": "list", + "member": { + "target": "com.amazonaws.ssmquicksetup#StatusSummary" + } + }, + "com.amazonaws.ssmquicksetup#StatusSummary": { + "type": "structure", + "members": { + "StatusType": { + "target": "com.amazonaws.ssmquicksetup#StatusType", + "traits": { + "smithy.api#documentation": "

The type of a status summary.

", + "smithy.api#required": {} + } + }, + "Status": { + "target": "com.amazonaws.ssmquicksetup#Status", + "traits": { + "smithy.api#documentation": "

The current status.

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

When applicable, returns an informational message relevant to the current status and status type of the status summary object. We don't recommend implementing parsing logic around this value since the messages returned can vary in format.

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

The datetime stamp when the status was last updated.

", + "smithy.api#required": {}, + "smithy.api#timestampFormat": "date-time" + } + }, + "StatusDetails": { + "target": "com.amazonaws.ssmquicksetup#StatusDetails", + "traits": { + "smithy.api#documentation": "

Details about the status.

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

A summarized description of the status.

" + } + }, + "com.amazonaws.ssmquicksetup#StatusType": { + "type": "enum", + "members": { + "DEPLOYMENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Deployment" + } + }, + "ASYNC_EXECUTIONS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AsyncExecutions" + } + } + } + }, + "com.amazonaws.ssmquicksetup#TagEntry": { + "type": "structure", + "members": { + "Key": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The key for the tag.

", + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^[A-Za-z0-9 _=@:.+-/]+$" + } + }, + "Value": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The value for the tag.

", + "smithy.api#length": { + "max": 256 + }, + "smithy.api#pattern": "^[A-Za-z0-9 _=@:.+-/]+$" + } + } + }, + "traits": { + "smithy.api#documentation": "

Key-value pairs of metadata.

", + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.ssmquicksetup#TagKeys": { + "type": "list", + "member": { + "target": "smithy.api#String" + } + }, + "com.amazonaws.ssmquicksetup#TagResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.ssmquicksetup#TagResourceInput" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.ssmquicksetup#AccessDeniedException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ConflictException" + }, + { + "target": "com.amazonaws.ssmquicksetup#InternalServerException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ThrottlingException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Assigns key-value pairs of metadata to Amazon Web Services resources.

", + "smithy.api#http": { + "code": 200, + "method": "PUT", + "uri": "/tags/{ResourceArn}" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.ssmquicksetup#TagResourceInput": { + "type": "structure", + "members": { + "ResourceArn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The ARN of the resource to tag.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Tags": { + "target": "com.amazonaws.ssmquicksetup#TagsMap", + "traits": { + "smithy.api#documentation": "

Key-value pairs of metadata to assign to the resource.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ssmquicksetup#Tags": { + "type": "list", + "member": { + "target": "com.amazonaws.ssmquicksetup#TagEntry" + }, + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.ssmquicksetup#TagsMap": { + "type": "map", + "key": { + "target": "smithy.api#String", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^[A-Za-z0-9 _=@:.+-/]+$" + } + }, + "value": { + "target": "smithy.api#String", + "traits": { + "smithy.api#length": { + "max": 256 + }, + "smithy.api#pattern": "^[A-Za-z0-9 _=@:.+-/]+$" + } + }, + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.ssmquicksetup#ThrottlingException": { + "type": "structure", + "members": { + "Message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The request or operation exceeds the maximum allowed request rate per Amazon Web Services account and Amazon Web Services Region.

", + "smithy.api#error": "client", + "smithy.api#httpError": 429, + "smithy.api#retryable": {} + } + }, + "com.amazonaws.ssmquicksetup#UntagResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.ssmquicksetup#UntagResourceInput" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.ssmquicksetup#AccessDeniedException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ConflictException" + }, + { + "target": "com.amazonaws.ssmquicksetup#InternalServerException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ThrottlingException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Removes tags from the specified resource.

", + "smithy.api#http": { + "code": 200, + "method": "DELETE", + "uri": "/tags/{ResourceArn}" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.ssmquicksetup#UntagResourceInput": { + "type": "structure", + "members": { + "ResourceArn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The ARN of the resource to remove tags from.

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

The keys of the tags to remove from the resource.

", + "smithy.api#httpQuery": "tagKeys", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ssmquicksetup#UpdateConfigurationDefinition": { + "type": "operation", + "input": { + "target": "com.amazonaws.ssmquicksetup#UpdateConfigurationDefinitionInput" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.ssmquicksetup#AccessDeniedException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ConflictException" + }, + { + "target": "com.amazonaws.ssmquicksetup#InternalServerException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ThrottlingException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates a Quick Setup configuration definition.

", + "smithy.api#http": { + "code": 200, + "method": "PUT", + "uri": "/configurationDefinition/{ManagerArn}/{Id}" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.ssmquicksetup#UpdateConfigurationDefinitionInput": { + "type": "structure", + "members": { + "ManagerArn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The ARN of the configuration manager associated with the definition to\n update.

", + "smithy.api#httpLabel": {}, + "smithy.api#pattern": "^arn:aws:ssm-quicksetup:([^:]+):(\\d{12}):configuration-manager/[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$", + "smithy.api#required": {} + } + }, + "Id": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The ID of the configuration definition you want to update.

", + "smithy.api#httpLabel": {}, + "smithy.api#pattern": "^[a-z0-9-]{1,20}$", + "smithy.api#required": {} + } + }, + "TypeVersion": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The version of the Quick Setup type to use.

", + "smithy.api#pattern": "^\\d{1,3}(\\.\\d{1,3})?$|^LATEST$" + } + }, + "Parameters": { + "target": "com.amazonaws.ssmquicksetup#ConfigurationParametersMap", + "traits": { + "smithy.api#documentation": "

The parameters for the configuration definition type.

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

The name of the IAM role used to deploy local\n configurations.

", + "smithy.api#pattern": "^[\\w+=,.@-]{1,64}$" + } + }, + "LocalDeploymentAdministrationRoleArn": { + "target": "com.amazonaws.ssmquicksetup#IAMRoleArn", + "traits": { + "smithy.api#documentation": "

The ARN of the IAM role used to administrate local configuration\n deployments.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ssmquicksetup#UpdateConfigurationManager": { + "type": "operation", + "input": { + "target": "com.amazonaws.ssmquicksetup#UpdateConfigurationManagerInput" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.ssmquicksetup#AccessDeniedException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ConflictException" + }, + { + "target": "com.amazonaws.ssmquicksetup#InternalServerException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ThrottlingException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates a Quick Setup configuration manager.

", + "smithy.api#http": { + "code": 200, + "method": "PUT", + "uri": "/configurationManager/{ManagerArn}" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.ssmquicksetup#UpdateConfigurationManagerInput": { + "type": "structure", + "members": { + "ManagerArn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The ARN of the configuration manager.

", + "smithy.api#httpLabel": {}, + "smithy.api#pattern": "^arn:aws:ssm-quicksetup:([^:]+):(\\d{12}):configuration-manager/[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$", + "smithy.api#required": {} + } + }, + "Name": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A name for the configuration manager.

", + "smithy.api#pattern": "^[ A-Za-z0-9._-]{0,120}$" + } + }, + "Description": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A description of the configuration manager.

", + "smithy.api#pattern": "^.{0,512}$" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ssmquicksetup#UpdateServiceSettings": { + "type": "operation", + "input": { + "target": "com.amazonaws.ssmquicksetup#UpdateServiceSettingsInput" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.ssmquicksetup#AccessDeniedException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ConflictException" + }, + { + "target": "com.amazonaws.ssmquicksetup#InternalServerException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ThrottlingException" + }, + { + "target": "com.amazonaws.ssmquicksetup#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates settings configured for Quick Setup.

", + "smithy.api#http": { + "code": 200, + "method": "PUT", + "uri": "/serviceSettings" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.ssmquicksetup#UpdateServiceSettingsInput": { + "type": "structure", + "members": { + "ExplorerEnablingRoleArn": { + "target": "com.amazonaws.ssmquicksetup#IAMRoleArn", + "traits": { + "smithy.api#documentation": "

The IAM role used to enable Explorer.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ssmquicksetup#ValidationException": { + "type": "structure", + "members": { + "Message": { + "target": "smithy.api#String" + } + }, + "traits": { + "smithy.api#documentation": "

The request is invalid. Verify the values provided for the request parameters are\n accurate.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + } + } +}